我很难从WCF" web服务访问web.config中的连接字符串"
cenario: visual studio 2010中的解决方案,包含2个Web项目,展示位置和wcfPlacement。 具有connectionstings的web.config位于放置项目中。
wcfPlacement没有web.config,如图所示,但是当我构建它时,它会生成一个。
从放置项目我可以使用访问连接字符串 ConfigurationManager.ConnectionStrings [" XX&#34]的ConnectionString。 - 好的。
但如果我在服务内部,当我尝试访问时,它会给我一个错误,迫使我在每个类中声明一个我希望数据库访问的连接字符串,这不是很好
如何从wcf访问放置项目中web.config中的连接字符串?
我试过了:
SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["webV"].ConnectionString);
但它给了我一个错误: System.NullReferenceException:未将对象引用设置为对象的实例。在wcfPlacement.Prospect.doLogin(String login,String senha)
在课堂上尝试了这个:
System.Configuration.Configuration rootWebConfig =
System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration("/placement");
System.Configuration.ConnectionStringSettings connString;
if (rootWebConfig.ConnectionStrings.ConnectionStrings.Count > 0)
{
connString =
rootWebConfig.ConnectionStrings.ConnectionStrings["NorthwindConnectionString"];
if (connString != null)
Console.WriteLine("Northwind connection string = \"{0}\"",
connString.ConnectionString);
else
Console.WriteLine("No Northwind connection string");
}
但是我收到了这个错误。 错误1类型或命名空间名称'配置'名称空间中不存在System.Web' (你错过了一个程序集引用吗?)
答案 0 :(得分:1)
您必须添加对System.Configuration命名空间的引用。
https://msdn.microsoft.com/en-us/library/system.configuration(v=vs.110).aspx