日期:2014-05-18  浏览次数:20867 次

[新手问题]关于三层中configurationManager读不出app.config的问题
app.config中设置数据库连接
然后在类中 string connString=ConfigurationMamager.ConnectionStrings["MyConn"].ToString();用这个读取.

请教大家,为什么在一层的结构中,可以读取.

1.但是到了三层结构中,却读不出来了呢..就算是在同一层的数据访问层也读不出来.
2.如果是在其他层,或是表示层中想读取数据访问层的app.config,要怎么取读呢.

------解决方案--------------------

http://developer.51cto.com/art/200908/146303.htm

不知道你app.config里怎么写的。。
------解决方案--------------------
找个类库 建立一个类ConfigHelper


using System.Configuration;

C# code
 public class ConfigHelper
    {
        public static string GetconnMsSql
        {
            get
            {
                return ConfigurationManager.AppSettings["MyConn"];
            }
        }  

    }

------解决方案--------------------
在三层架构中,从配置文件中读取数据库连接字符串。
一般情况下,在三层架构中,需要把配置文件写在表示层中
数据库连接字符串是在数据访问层中使用的。
那么在数据访问层需要引用System.Configuration
C# code

string connString = ConfigurationManager.ConnectionString["name"].ToString();

------解决方案--------------------
你在DAL层中专门写一个获取数据库连接和操作的相关类,比如SQLHelper类

然后在其他层,如BLL、Model层等添加DAL的引用,然后就可以直接调用了。