【问题标题】:Overide Connection for RedisSessionStateProvider on Azure覆盖 Azure 上 RedisSessionStateProvider 的连接
【发布时间】:2015-07-31 20:21:01
【问题描述】:

我正在使用 RedisSessionStateProvider 和 asp.net mvc 4.5 进行会话管理。我正在使用 azure web 应用程序进行托管。在 prod 部署期间,如何在 azure 门户上覆盖此连接信息。除了使用 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>

【问题讨论】:

    标签: c# asp.net azure redis azure-web-app-service


    【解决方案1】:

    提供程序接受一个可以指向应用程序设置的 ConnectionString 参数。您可以根据您运行的环境设置此应用设置。 以下代码显示了 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>
    

    【讨论】:

    • 谢谢,这对我有用。澄清一点,connectionstring 值必须在 AppSettings 部分中。它不会在 ConnectionStrings 部分中找到(对我来说有点不直观)。
    • 但是你在哪里添加 applicationName="pWeb" ?
    猜你喜欢
    • 2015-08-28
    • 1970-01-01
    • 2021-10-08
    • 2015-12-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-30
    • 1970-01-01
    相关资源
    最近更新 更多