我正在开发一台新设置的笔记本电脑。我经常使用两个Web项目。一个很好。给我带来麻烦的是C#Web表单应用程序(ASP.NET 4.5,EF 6.0)。
以下是我尝试通过应用程序连接到数据库时遇到的错误 -
例外:
底层提供程序在Open上失败。
内部例外:
发生与网络相关或特定于实例的错误 建立与SQL Server的连接。找不到服务器或 无法访问。验证实例名称是否正确 SQL Server配置为允许远程连接。 (提供者:TCP 提供者,错误:0 - 因为目标而无法建立连接 机器主动拒绝它。)
使用IIS Express和ASP.NET Development Server进行调试可以得到相同的结果。我的连接字符串也很好 - 它与我使用的另一个项目中的连接字符串大致相同,它们的实际名称。为清楚起见,它是:
<connectionStrings>
<clear/>
<add name="RetailerEntities" connectionString="Data Source=localhost;Network Library=DBMSSOCN;Initial Catalog=db;user id=sa;password=password;MultipleActiveResultSets=true;"/>
<add name="RetailerCContext" connectionString="metadata=res://*/Providers.Model.csdl|res://*/Providers.Model.ssdl|res://*/Providers.Model.msl;provider=System.Data.SqlClient;provider connection string="Data Source=localhost;Network Library=DBMSSOCN;Initial Catalog=db;user id=sa;password=password;MultipleActiveResultSets=true;"" providerName="System.Data.EntityClient" />
</connectionStrings>
我还应该提一下,我工作的两个项目都访问同一个数据库,所以很奇怪一个人会连接,一个人不会。
有趣的是,这个项目一旦部署到生产环境中就没有问题,因此它看起来只是我笔记本电脑上的本地问题。这让我想知道它是某种权限问题。
堆栈跟踪是:
at System.Data.Entity.Core.EntityClient.EntityConnection.Open()
at System.Data.Entity.Core.Objects.ObjectContext.EnsureConnection()
at System.Data.Entity.Core.Objects.ObjectContext.ExecuteInTransaction[T](Func`1 func, IDbExecutionStrategy executionStrategy, Boolean startLocalTransaction, Boolean releaseConnectionOnSuccess)
at System.Data.Entity.Core.Objects.ObjectQuery`1.<>c__DisplayClassb.<GetResults>b__9()
at System.Data.Entity.SqlServer.DefaultSqlExecutionStrategy.Execute[TResult](Func`1 operation)
at System.Data.Entity.Core.Objects.ObjectQuery`1.GetResults(Nullable`1 forMergeOption)
at System.Data.Entity.Core.Objects.ObjectQuery`1.<System.Collections.Generic.IEnumerable<T>.GetEnumerator>b__0()
at System.Lazy`1.CreateValue()
at System.Lazy`1.LazyInitValue()
at System.Lazy`1.get_Value()
at System.Data.Entity.Internal.LazyEnumerator`1.MoveNext()
at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
at Retailer.Library.DB.ConfigurationController.GetConfigurations() in c:\Development\Retail\RetailerC.Library\DB\ConfigurationController.cs:line 41
at RetailerC.Web.Default.BindDdlSearchUrl() in c:\Development\Retail\RetailerC.Web\Default.aspx.cs:line 449
at RetailerC.Web.Default.Page_Load(Object sender, EventArgs e) in c:\Development\Retail\RetailerC.Web\Default.aspx.cs:line 79
如果有人有任何想法,或经历过类似的事情,我将不胜感激。
答案 0 :(得分:0)
我删除了'网络库= DBMSSOCN;'从连接字符串,它似乎现在工作正常。不知道为什么,但它已经为我做了..