我有几个项目,其中一些是Web应用程序,一些是Windows应用程序 我想全局化我的设置,比如Connection Strings,因为所有项目都使用相同的连接字符串 所以我按照这个例子How to share custom application configuration settings across projects in .NET
我的XML文件位于类库中,并在每个项目中引用。 Windows项目与文件路径一起工作正常,在客户端项目中是这样的:
<configuration>
<appSettings file="F:\Classes\ConnectionStringFile.xml">
</appSettings>
</configuration>
我还希望能够从Web项目中使用此xml文件。但是,Web项目不会接受此文件的路径,如前所示。
在Web项目和Windows项目之间共享此连接字符串文件的最佳方法或最佳解决方案是什么。我传了什么
类似于<appSettings file ="~/classLibrary/ConnectionStringFile.xml"
???`
答案 0 :(得分:0)
我们使用的解决方案是将共享设置存储在CommonApplicationData文件夹下的自定义文件夹中(例如,Windows7上的C:\ ProgramData):
var commonAppData = Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData);
var settingsFilePath = Path.Combine(commonAppData, "MyProgram\\Settings.xml");
答案 1 :(得分:0)
file=
接受相对路径,并且从ASP.NET和IIS静态文件规则中排除* .config文件,因此可以安全地将任何* .config文件拖放到ASP.NET站点中。只需将其放在web.config文件(Web应用程序的根目录)旁边,mylibrary.config
和file="mylibrary.config"
。