<configuration>
<configSections>
<section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null" />
</configSections>
<dataConfiguration defaultDatabase="NetVersion" />
<connectionStrings>
<add name="NetVersion" connectionString="Data Source=GJSERVER;Initial Catalog=XRSOFT;Persist Security Info=True;User ID=sa;Password=shoes;"
providerName="System.Data.SqlClient" />
<add name="SingleMachine" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\XRSOFT.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True;"
providerName="System.Data.SqlClient" />
</connectionStrings>如下面所述的配置文件,我如果查找name="NetVersion"的 connectionString值,能不能直接通过xpath查询到,而且不用循环结点?如果能怎样写?
<configSections>
<section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null" />
</configSections>
<dataConfiguration defaultDatabase="NetVersion" />
<connectionStrings>
<add name="NetVersion" connectionString="Data Source=GJSERVER;Initial Catalog=XRSOFT;Persist Security Info=True;User ID=sa;Password=shoes;"
providerName="System.Data.SqlClient" />
<add name="SingleMachine" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\XRSOFT.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True;"
providerName="System.Data.SqlClient" />
</connectionStrings>如下面所述的配置文件,我如果查找name="NetVersion"的 connectionString值,能不能直接通过xpath查询到,而且不用循环结点?如果能怎样写?
解决方案 »
- 求助:用C#编写一个检测局域网中的单机是否访问外部网站的程序
- 弱智问题,用一个按钮控制label的显示与隐藏
- C# WIN DATAGRIDVIEW
- 【请教】各位2个问题(构造方法)(方法返回值)
- 请教如何在datagrid中显示多个表的数据
- 谁有《编程之道——C#程序设计入门》光盘教程 急用来学习!谢了
- C#winform 如何实现 读取excel表格,然后选择打印机再打印
- exle 导入到datagridview 表出错?
- 疯了,明明在还说System.IO.Ports不存在,网上搜遍了没找到答案,请帮忙看一下,感谢!
- Windows form问题中菜单和工具栏的问题
- C# 怎么给水晶报表传入参数
- 求助!!应用事务处理之后保存不上
configuration/connectionStrings/add[@name=NetVersion]
document.Load(fileName);
XPathNavigator navigator = this.document.CreateNavigator();
string currentDataBase = "NetVersion"
string xquery = @"/configuration/connectionStrings/add";
XmlNodeList xnl = document.SelectNodes(xquery);
if (xnl != null)
{
foreach (XmlNode xn in xnl)
{
if (xn.Attributes["name"].InnerText == currentDataBase)
{
查到后的处理
}
}
}
不知道还有其他的办法没有
XmlNode node = doc.SelectSingleNode("configuration/connectionStrings/add[@name='NetVersion']");
2.0的我至少发过2次阿。。郁闷。大家应该先查下再请教哦~~~~至少我是这样 <section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null" />LZ了解了XML的这个模式会很帮助你理解这个东东上面这段是提供你下面dataConfiguration这个段的解析用的类。。
Configuration config;
config = ConfigurationManager.OpenExeConfiguration(strExeFilePath)
请查看MSDN2005
Configuration 类负责读取配置文件的。。
ConnSection = config.GetSection("connectionStrings") as ConnectionStringsSection;
可以指定选择的连接串段
ConnectionStringSettings ConnSettings=ConnSection.ConnectionStrings["ConnName"]
抽取选择的节
然后就可以了
你自己查看下相应的关键字吧。。这个东西很是好用。。做项目经常使用。。
建议LZ看下配置文件的相应技术。。
而是置于machine.config文件中。。
ConnectionStringSettings setting = WebConfigurationManager.ConnectionStrings["NetVersion"];
string s = setting.ConnectionString;
更正下错误,我刚发的是asp2.0里面的读取方式,winform用mailebai的~
========================
<section name="connectionStrings" type="System.Configuration.ConnectionStringsSection, System.Configuration, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" requirePermission="false" />就这个东西解析的。汗
能解释下不??
type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null"
应该是Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings这东西解析的
System.Configuration.ConnectionStringsSection
这个是你要的东西。明白???
在section段中写出来就可以了。。你说的那个是负责解析dataConfiguration 这个段的。。
针对这个配置文件我还作了个配置工具你发现有你上面那个connectionStrings段在section书写了吗?没有吧//?〉??
是因为他被默认放置于machine中了倒塌