Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 从本地IIS应用程序访问Azure Blob存储_Asp.net_.net_Iis_Azure_Azure Storage Blobs - Fatal编程技术网

Asp.net 从本地IIS应用程序访问Azure Blob存储

Asp.net 从本地IIS应用程序访问Azure Blob存储,asp.net,.net,iis,azure,azure-storage-blobs,Asp.net,.net,Iis,Azure,Azure Storage Blobs,我有一个内部部署的.NET/IIS应用程序,为此我开发了新功能,允许用户将图像上载到Azure Blob存储。在我的开发环境中一切正常,现在我准备将此应用程序部署到我的生产环境中 我不知道该怎么做。可能吗?如果是,我该怎么做 再详细一点: 我的环境是运行IIS 7.5的Windows Server 2008 R2 该服务连接到云中实际的Azure Blob存储,我可以使用Azure SDK 3.3中的Azure开发计算/存储模拟器从我的开发环境(与IIS Express的2013版相比)在线保

我有一个内部部署的.NET/IIS应用程序,为此我开发了新功能,允许用户将图像上载到Azure Blob存储。在我的开发环境中一切正常,现在我准备将此应用程序部署到我的生产环境中

我不知道该怎么做。可能吗?如果是,我该怎么做

再详细一点:

  • 我的环境是运行IIS 7.5的Windows Server 2008 R2
  • 该服务连接到云中实际的Azure Blob存储,我可以使用Azure SDK 3.3中的Azure开发计算/存储模拟器从我的开发环境(与IIS Express的2013版相比)在线保存图像(即,我在Azure门户上登录到我的帐户,并可以看到上传到测试容器中的图像)
  • 我无法使用IIS 7.5在我的开发箱上运行解决方案
  • 我已尝试从解决方案中的“Build”菜单中“Deploy”该解决方案,但什么也没发生。尝试在我的解决方案中“发布”云服务项目只需将其带到Azure在线发布即可。这就是让我的解决方案发挥作用的必要条件吗?发布云服务项目

谢谢。

如果您只有一个部署在本地的web应用程序,那么您不应该使用云服务项目(这是一个最终部署为Azure云服务的项目)。如果希望在web服务器上上载blob,只需将添加到web项目中,并使用存储库上载blob(假设您已经在某个地方有了这样的代码,因为您说您的dev box正在运行).

我认为我的问题的答案基本上是完全忽略云服务项目,只需像通常一样部署底层网站,只需做两个小修改

  • 在Web.config文件中添加Azure Blob连接字符串,以便您可以从项目中访问它,而无需参考云存储帐户设置(即CloudConfigurationManager.GetSetting等)
  • 在Web.config文件中,注释掉AzureDiagnostics跟踪侦听器:

      <listeners>
    <add type="Microsoft.WindowsAzure.Diagnostics.DiagnosticMonitorTraceListener, Microsoft.WindowsAzure.Diagnostics, Version=2.4.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" name="AzureDiagnostics">
      <filter type="" />
    </add>
    
    
    

  • 通过这两个修改,我可以将基础网站部署到本地IIS,同时仍然可以从本地解决方案访问Azure Blob存储

    我仍然不能完全确定我的解决方案中是否曾经需要或仍然需要云服务项目,但我现在将它保留在那里


    希望这个问题/答案能帮助其他人搜索混合内部部署和Azure解决方案的文档,因为在这个问题上几乎什么都没有

    你是如何得出OP不应该使用云服务的结论的?这是一个可行的选择,就像虚拟机部署和网站部署一样。我们几乎没有关于应用程序总体及其总体架构的信息,在考虑选择哪个选项时涉及到许多因素。不幸的是,用于本地访问Azure服务的文档非常有限。我认为你可能是对的,但我开始走这条路是因为,根据微软和其他地方的所有文档,我似乎需要一个云服务项目。似乎解决上述问题的方法只是使用底层网站项目,而忽略了云服务项目,在对网站项目进行一些小的修改时,我会在我有几分钟的时间后在回答这个问题时发布。@David OP说该应用程序是一个需要访问Azure blob存储的on-prem web应用程序。它没有说应用程序需要迁移到云,因此不需要云服务。这里唯一需要的Azure资源是存储帐户。正如我在回答中所说,您不需要云项目。如果要将web应用程序或服务部署到Azure,您将使用云项目。