数据库
首页 > 数据库> > c# – 在Azure上覆盖RedisSessionStateProvider的连接

c# – 在Azure上覆盖RedisSessionStateProvider的连接

作者:互联网

我正在使用RedisSessionStateProvider与asp.net mvc 4.5进行会话管理.我正在使用azure web app进行托管.如何在prod部署期间覆盖azure portal上的此连接信息.有没有其他方法比使用web.release.config转换文件?

  <sessionState mode="Custom" timeout="2000" customProvider="MySessionStateStore">
    <providers>
      <add name="MySessionStateStore" type="Microsoft.Web.Redis.RedisSessionStateProvider" host="server.cloudapp.net" port="6379" accessKey="password" ssl="false" databaseId="1" applicationName="pWeb" />
    </providers>
  </sessionState>

解决方法:

提供者接受ConnectionString参数,该参数可以指向appsetting.您可以根据您运行的环境设置此appsetting.
以下代码显示了web.config

<appSettings>
    <add key="RedisConnection" value="cachename.redis.cache.windows.net,ssl=true,password=password"/>
  </appSettings>
    <sessionState mode="Custom" customProvider="MySessionStateStore">
      <providers>
        <add name="MySessionStateStore" 
             type="Microsoft.Web.Redis.RedisSessionStateProvider" connectionString="RedisConnection"/>
      </providers>
    </sessionState>

标签:c,asp-net,redis,azure,azure-web-sites
来源: https://codeday.me/bug/20190611/1221998.html