C# orner,有一个“添加”按钮,右键有一个很小的下拉指示器-点击该指示器,你会看到一个带有“添加”和“添加为链接”的上下文菜单-使用“添加为链接”谢谢marc_,我找到了该按钮,并打开了app.config作为链接,但是这会导致build再次为每个项目创建

C# orner,有一个“添加”按钮,右键有一个很小的下拉指示器-点击该指示器,你会看到一个带有“添加”和“添加为链接”的上下文菜单-使用“添加为链接”谢谢marc_,我找到了该按钮,并打开了app.config作为链接,但是这会导致build再次为每个项目创建,c#,config,C#,Config,orner,有一个“添加”按钮,右键有一个很小的下拉指示器-点击该指示器,你会看到一个带有“添加”和“添加为链接”的上下文菜单-使用“添加为链接”谢谢marc_,我找到了该按钮,并打开了app.config作为链接,但是这会导致build再次为每个项目创建单独的配置文件,因此,在部署3项目时,我将有3个配置文件。我想做的是为某个解决方案中的所有项目保留一个文件。我可以这样做吗?对不起,我已经更正了我的答案,改为“添加”而不是“打开”-当时我面前没有VS:)你是对的,不过这只解决了构建时的共享配置


orner,有一个“添加”按钮,右键有一个很小的下拉指示器-点击该指示器,你会看到一个带有“添加”和“添加为链接”的上下文菜单-使用“添加为链接”谢谢marc_,我找到了该按钮,并打开了app.config作为链接,但是这会导致build再次为每个项目创建单独的配置文件,因此,在部署3项目时,我将有3个配置文件。我想做的是为某个解决方案中的所有项目保留一个文件。我可以这样做吗?对不起,我已经更正了我的答案,改为“添加”而不是“打开”-当时我面前没有VS:)你是对的,不过这只解决了构建时的共享配置。。。请参阅我的下一个答案。VS2012是否提供了从添加项列表添加app.config文件的可能性?我找不到它。我同意设计方面的考虑,但我必须构建3个使用相同配置文件的独立控制台应用程序。您知道我是否可以设置一个公共app.config文件,以及如何访问appSettings吗?除非所有应用程序都部署到同一目录,否则此解决方案将无法工作。configSource属性不能包含绝对路径,也不能包含父目录的路径。@Jon:啊,是的,我总是忘记.NET部署中的“仅此目录或以下目录”规则。。。。。你说得对。我注意到这适用于控制台应用程序(也可能适用于其他应用程序),但如果我从Web项目(例如ASP.NET MVC)引用它,添加“TestShared”项目不会显示up@FrankFu是的,你是对的,有几种方法可以强制引用,比如,但请注意,我在尝试这样做时遇到了一些非常严重的问题。我发现简单地使用
类库
要容易得多。是的,我决定选择类库路径,而不是2017版。让我添加一个共享项目,但不让我从.net 4.6.1 Web应用程序添加对它的引用。有什么想法吗?这只适用于共享相同语言的项目。。。c#,vb.net。。。但是,如果您的解决方案有一些C#库和一个该死的VB.Net前端应用程序,而您被禁止在C#中移植,那么共享项目就不行了……您的链接已经失效。
ConfigurationManager.AppSettings["config1"]
ConfigurationFileMap fileMap = new ConfigurationFileMap(file); //Path to your config file
Configuration configuration = ConfigurationManager.OpenMappedMachineConfiguration(fileMap);
string value = configuration.AppSettings.Settings["key1"].Value;
System.Configuration.Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
config = ConfigurationManager.OpenExeConfiguration(Path.Combine(@"D:\", "config.exe"));
foreach (string key in config.AppSettings.Settings.AllKeys)
{
   string value = config.AppSettings.Settings[key].Value;
   ConfigurationManager.AppSettings.Set(key, value);
}