将SQL Server内存中OLTP和会话隔离设置为快照的ASP.NET会话状态

时间:2018-11-22 14:52:04

标签: c# asp.net-mvc session-state sql-server-2017 memory-optimized-tables

我们在Framework v 4.7.2上部署了一个新版本。我们还here

记录了异步Asp.Net会话状态模块,并将其部署在内存OLTP提供程序中

我们的测试环境很好,而Canary服务器也很好。然后,我们将构建版本推广到服务器场中的其他服务器,并突然开始看到许多此类异常:

  

System.Data.SqlClient.SqlException(0x80131904):将会话TRANSACTION ISOLATION LEVEL设置为SNAPSHOT时,无法访问或创建内存优化表和本机编译模块

我们的提供程序配置如下:

<providers>
    <add name="SqlSessionStateProviderAsync"  connectionStringName="Session.ConnectionString" 
    type="Microsoft.AspNet.SessionState.SqlSessionStateProviderAsync, 
    Microsoft.AspNet.SessionState.SqlSessionStateProviderAsync, 
    Version=1.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" 
    UseInMemoryTable="true" MaxRetryNumber="5" RetryInterval="100"  />
</providers>

编辑

已删除对AllowConcurrentRequestsPerSession的引用,该引用未在此处配置,而是作为app setting

0 个答案:

没有答案