我们在 Framework v 4.7.2 上部署了一个新版本。我们还部署了异步 Asp.Net 会话状态模块和内存 OLTP 提供程序,如此处所述
我们的测试环境很好,金丝雀服务器测试也很好。然后,我们将构建推广到场中的其他服务器,突然开始看到很多这样的异常:
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 的引用,而是作为应用设置