0

我已經安裝asp.net通用供應商,但改變配置後我收到錯誤「EF運營商需要MultipleActiveResultSets = True以System.Data.SqlClient的連接字符串Asp.net通用供應商的錯誤

我改變了連接字符串也

下面

是我的連接字符串和web.config中的會話塊,請幫我

<add name="DbEntities" connectionString="metadata=res://*/Entities.csdl|res://*/Entities.ssdl|res://*/Entities.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=<source>;Initial Catalog=<DB Name>;User ID=<User>;Password=<Password>;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient" /> 

<add name="StorageConnectionString" connectionString="DefaultEndpointsProtocol=http;AccountName=<Account Name>;AccountKey=<Account Key>" /> 

<providers> 

    <add name="DefaultSessionProvider" type="System.Web.Providers.DefaultSessionStateProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="StorageConnectionString" applicationName="/" /> 

    </providers> 

</sessionState> 

回答

0

我覺得你有相當多,只有一個很小的誤差得到了它。當你添加會話狀態提供者時,它應該指向你的SQL連接字符串而不是你的存儲連接字符串。

<providers> 

    <add name="DefaultSessionProvider" type="System.Web.Providers.DefaultSessionStateProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DbEntities" applicationName="/" /> 

    </providers> 

只是一個建議,但您可能要考慮使用新的appfabric緩存會話狀態提供程序。

0

耶!我得到它的工作!

當一個部署ASP.NET通用供應商的遠程網絡機器上的不同盒子SQL服務器

,需要「刪除」在主web.config中的LocalSqlServer連接,然後有一個虛擬 LocalSqlServer連接Web項目web.config中的字符串。例如

<clear /> 
<remove name="LocalSqlServer" /> 
<add name="LocalSqlServer" connectionString="data source=someserver;initial catalog=somedatabase;UID=someuser;PWD=somepassword;multipleactiveresultsets=True" providerName="System.Data.SqlClient"/>