当 WCF 服务到 TCP/IP 时,底层提供程序在开放实体框架上失败
Posted
技术标签:
【中文标题】当 WCF 服务到 TCP/IP 时,底层提供程序在开放实体框架上失败【英文标题】:The underlying provider failed on Open Entity Framework when WCF Service to TCP/IP 【发布时间】:2012-03-26 23:07:31 【问题描述】:我有一个 MVC 应用程序,它访问连接到实体框架的 WCF 服务。
我将连接从 MVC 应用程序切换到 WCF 服务,从 basichttp 切换到 TCP/IP,现在我收到一个错误 - 底层提供程序在打开时失败。在访问实体框架时。这个错误不会发生在 basichttp 上。
在 IIS7.5 应用程序池上运行的 WCF 服务设置为集成模式。
连接字符串:
<add name="lc"
connectionString="metadata=res://*/Lib.csdl|res://*/Lib.ssdl|res://*/Lib.msl;provider=System.Data.SqlClient;provider connection string="data source=(local);initial catalog=OB;integrated security=True;multipleactiveresultsets=True;App=EntityFramework""
providerName="System.Data.EntityClient" />
不确定这是否相关,但我不想只使用 sql server 身份验证 windows 身份验证。
感谢您的帮助。
【问题讨论】:
【参考方案1】:迁移到 IIS 导致双跳问题。 EntityFramework 连接字符串中需要用户名和密码。或者,我授予帐户应用程序池(在我的情况下为 NTAUTHORITY\NETWORK SERVICE)在 sql server 数据库的许可下运行,因为我不需要模拟。
问候, 通用汽车
【讨论】:
以上是关于当 WCF 服务到 TCP/IP 时,底层提供程序在开放实体框架上失败的主要内容,如果未能解决你的问题,请参考以下文章