EF框架App.config,我配置了两个数据库连接字符串,问题是怎么使用

<add name="DashengDbContext" connectionString="Data Source......
<add name="RSDbContext" connectionString="Data Source.......
同时已经有了个DashengDbContext.cs文件了

我配置好了RSDbContext.cs后,我使用的时候是这样的
using (RSDbContext context = new RSDbContext())
{......................
}
等我一运行,"没有连接字符串命名为“RSDbContext”可以在应用程序配置文件。"

自定义的类 不能使用using。需要释放或者关闭的可以用using 比如

using(SqlConnection conn=new SqlConnection()){}

你只能

DashengDbContext context = new DashengDbContext();

contenxt.方法();


 

 

假设是AppSettings节点下

string connectionString=

System.Configuration.ConfigurationManager.AppSettings["RSDbContext"];

 

或者 直接读取xml文件 即节点add 下的属性name=RSDbContext的

模仿下面的读取xml代码

//using System.Xml;
/// <summary>
        /// 通过键获取appSettings的值
        /// </summary>
        /// <param name="key"></param>
        /// <returns></returns>
        public static string GetValueByKey(string key) 
        {
            XmlDocument doc = new XmlDocument();
            doc.Load(AppDomain.CurrentDomain.BaseDirectory + "config.xml");
            XmlNode node = doc.DocumentElement.ChildNodes[1]; 
            //找到appSettings节点 
            foreach (XmlNode childNode in node.ChildNodes)
            {
                if (childNode.Name == "add" && childNode.Attributes["name"] != null && childNode.Attributes["name"].InnerText == key)
                {
                    return childNode.Attributes["connectionString"].InnerText;
                }
            }
            return "";
        }

温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答