C# 添加对System.Configuration.dll文件的引用操作
却被编译器提示说:
警告 1
“System.Configuration.ConfigurationSettings.AppSettings”
已过时:
“This method is obsolete, it has been replaced by System.Configuration!System.Configuration.ConfigurationManager.AppSettings”
于是转而想找到那个ConfigurationManager类来使用,结果在System.Configuration命名空间下死活找不到ConfigurationManager类,
无奈,求助于网络,才知道原来还要添加对System.Configuration.dll 文件的引用~~
在所要使用ConfigurationManager的程序集中找到引用接口,点击程序集,然后找到引用System.Configuration;
第一步打开解决方案资源管理器
第二步右击引用节点单机添加引用
第三步在程序集中找到system.configuration
补充:C# 将引用的DLL文件放到指定的目录下
引用的DLL比较多的时候,全部的DLL都放在exe同目录下,显得比较乱而且不利于管理。为了更好的管理软件中的各种文件应该分门别类的放入放在子文件夹中。步骤如下:
1、将dll文件放入子文件夹
2、添加引用
解决方案资源管理器中,中 工程名或者“引用”上右键,选中添加引用。
中引用管理器中,点击浏览,选中子文件夹中的dll文件。
3、修改dll文件的引用属性
点击添加成功的引用,将“复制本地”改成false(不然程序运行的时候会将子文件夹下的dll文件复制到根目录中)。
4、添加引用的地址,修改config文件
在根目录中打开“app.config”文件,在<configuration>节点后面添加<runtime>节点再添加下面的节点,其中 probing privatePath 中的地址为子文件的名称。重新生成一下就可以达到预期效果了。指定的目录即为生成exe所在路径的次级dll文件目录。
<?xml version="1.0" encoding="utf-8" ?> <configuration> <runtime> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <probing privatePath="bin/dll;" /> </assemblyBinding> </runtime> </configuration>
<configuration> <runtime> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <probing privatePath="bin;bin2\subbin;bin3"/> </assemblyBinding> </runtime> </configuration>
这是最简单的方法,当然也有一定的局限性,就是没法对dll做控制,另外,无法解决第三方DllImprt中引入的程序集不在根目录下的问题,不过无论怎么说,这个都基本解决了问题。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。如有错误或未考虑完全的地方,望不吝赐教。