读写配置文件app.config的问题

MINJI 2006-11-02 02:16:43
我的winform程序,配置文件名App.config,内容:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <appSettings>
  <add key="COM" value="1" />
  <add key="BaudRate" value="9600" />
  <add key="Parity" value="Event" />
  <add key="DataBit" value="8" />
  <add key="DataBit" value="1" />
 </appSettings>
</configuration>

没有问题吧?可是运行程序
using System.Configuration;
string strCOM = System.Configuration.ConfigurationSettings.AppSettings["COM"].ToString();
总是报告“未处理的System.Configuration.ConfigurationException异常,无法识别的元素”,什么道理?谢谢!
...全文
399 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
weidegong 2006-11-02
  • 打赏
  • 举报
回复
有三种方法,下面这个是最实用的。NHIbernate的配置文件就是用了这种:

NameValueCollection nc=(NameValueCollection)ConfigurationSettings.GetConfig("自定义节名");
return nc["Key名"];
----------------------------
实例:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="nhibernate" type="System.Configuration.NameValueSectionHandler, System, Version=1.0.3300.0,Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
<section name="ado.net" type="System.Configuration.NameValueSectionHandler" />
</configSections>

<nhibernate>

<!--连接数据提供者 -->
<add key="hibernate.connection.provider" value="NHibernate.Connection.DriverConnectionProvider"/>

<!--连接数据方言最常用的是MsSql2000Dialect -->
<add key="hibernate.dialect" value="NHibernate.Dialect.MsSql2000Dialect"/>

<!--连接数据驱动类-->
<add key="hibernate.connection.driver_class" value="NHibernate.Driver.SqlClientDriver"/>

<!--数据库连接字符串-->
<add key="hibernate.connection.connection_string" value="Server=tracserver;uid=spc;pwd=spc;database=CabinetManager"/>

</nhibernate>

<ado.net>
<add key="ado.net.connection.connection_string" value="Provider=SQLOLEDB;Data Source=tracserver;Initial Catalog=CabinetManager;user id=spc;password=spc;pooling =true;min pool size=1;max pool size=100;connection lifetime=5;"/>
</ado.net>
</configuration>


public static string getAdoNetConnectionString()
{
NameValueCollection nc=(NameValueCollection)ConfigurationSettings.GetConfig("ado.net");
return nc["ado.net.connection.connection_string"];
}
zilong32 2006-11-02
  • 打赏
  • 举报
回复
System.Configuration.ConfigurationManager.AppSettings.Get("COM");
brucenan999 2006-11-02
  • 打赏
  • 举报
回复
你要保证你的配置文件与你的主程序文件在同一个目录中.
写回去可能要用XML操作了.找到相应的结合,改变值.

2.0好像可以直接改了.
lizhizhe2000 2006-11-02
  • 打赏
  • 举报
回复
你看看这个链接
http://blog.csdn.net/solomon300/archive/2006/04/26/677597.aspx
如果你用的是.NET 2.0,还是用ConfigurationManager 类
MINJI 2006-11-02
  • 打赏
  • 举报
回复
另外,修改了配置后如何再写回文件里去呢?谢谢!

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧