【问题标题】:Error between Azure Web App and Azure Storage in productionAzure Web App 和 Azure 存储在生产中的错误
【发布时间】:2015-07-01 22:36:21
【问题描述】:

我在 Azure Web Apps (ASP.NET MVC 4) 中有一个应用程序,想将文件上传到 Azure 存储。 Web.config 配置了存储模拟器:

<appSettings>
  ...
  <add key="StorageConnectionString" value="UseDevelopmentStorage=true" />
  <add key="CloudStorageContainerReference" value="dnc-demo" />
</appSettings>

并且连接字符串是在Web.Release.config中配置的:

<connectionStrings>
    <add name="StorageConnection" connectionString="DefaultEndpointsProtocol=https;AccountName=XXXX;AccountKey=XXX" xdt:Transform="SetAttributes" xdt:Locator="Match(name)"/>
</connectionStrings>

问题是当我上传文件(在生产中)时出现以下错误:

[SocketException: An attempt was made to access a socket in a way forbidden by its access permissions 127.0.0.1:10000]

我该如何解决??

谢谢!!

【问题讨论】:

  • 好吧,鉴于它是SocketException,我会说您的存储不是问题。你在使用什么 websocket 库,socket.io
  • 您正在对 元素应用 web.config 转换,但在 appSettings 元素中定义它。
  • @GauravMantri 有什么解决方法的建议吗??
  • 可以在 web.config 和 web.release.config 中使用 &lt;connectionStrings&gt; 元素并在您的应用程序中使用 StorageConnection 连接字符串?现在,您似乎在应用程序中使用 appSettings 中的 StorageConnectionString
  • @GauravMantri 这就是问题所在,我将发布解决方案。非常感谢!!!

标签: c# asp.net azure azure-storage azure-blob-storage


【解决方案1】:

修复:

Web.config 应具有以下配置:

<connectionStrings>
    <add name="StorageConnection" connectionString="UseDevelopmentStorage=true" />
</connectionStrings>

Web.Release.config中的连接字符串应该是这样的:

<connectionStrings>
    <add name="StorageConnection"
      connectionString="DefaultEndpointsProtocol=https;AccountName=XXXX;AccountKey=XXX" 
      xdt:Transform="SetAttributes" xdt:Locator="Match(name)"/>
</connectionStrings>

所以 CloudStorageAccount 可以这样初始化:

CloudStorageAccount storageAccount = CloudStorageAccount.Parse(ConfigurationManager.ConnectionStrings["StorageConnection"].ToString());

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-03-14
    • 2022-01-27
    • 1970-01-01
    • 1970-01-01
    • 2015-04-16
    • 1970-01-01
    • 2020-07-24
    • 1970-01-01
    相关资源
    最近更新 更多