“我的网站是实时的。此问题与在实时服务器上而不是在本地主机上配置会话超时有关。”
我遇到了会话过期太快的问题。链接仅需2-5分钟。我尝试了很多方法,最后决定将会话存储在"SQL Server“模式下
在我的web.config文件中,我有以下代码:
<sessionState mode="SQLServer" cookieless="false" timeout="45"
sqlConnectionString="data source=xxx.xx.xx.xxx;uid=xxxxxxx;pwd=xxxxxxxx"/>我有在服务器上的ASPState表所需的所有表。你可以从下面的图像中看到它。

但是当我运行我的应用程序时,它抛出了下面的错误:
无法使用SQL server,因为Sql Server上未安装ASP.NET 2.0版会话状态,或者ASP.NET没有运行dbo.TempGetVersion存储过程的权限。如果尚未安装ASP.NET会话状态架构,请安装ASP.NET会话状态SQL Server 2.0版或更高版本。如果已安装架构,请向ASP.NET应用程序池标识或sqlConnectionString属性中指定的SQL Server用户授予对Sql Server存储过程的execute权限。
错误图像:

我不能理解确切的问题以及我如何解决它。任何帮助都将不胜感激。
谢谢
发布于 2013-03-13 17:13:40
在树中打开“可编程性”,并首先检查dbo.TempGetVersion是否存在。您可能没有安装正确的架构。
发布于 2014-04-30 22:27:12
为了让它为我工作,我使用以下选项运行该命令。
C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regsql.exe -S . -E -ssadd -sstype p我相信-ssadd选项(“添加对SQL Server模式会话状态的支持”)。是导致它正确设置存储过程的原因。请参阅此link以完成选项列表。
发布于 2018-12-20 21:35:30
所有这些信息都非常有价值,但还有一些更有价值的笔记,这取决于你的情况。
如果您运行该向导,则它不会使用-ssadd标志运行。-ssadd标志是创建dbo.TempGetVersion过程和其他过程的标志。
如果您要访问自定义服务器/数据库,则需要按如下方式运行该程序...
aspnet_regsql.exe -S YourServerName -d YourDatabaseName -ssadd -E -sstype chttps://stackoverflow.com/questions/15380423
复制相似问题