【问题标题】:Where is the NuGet package for Microsoft.WindowsAzure.ServiceRuntime?Microsoft.WindowsAzure.ServiceRuntime 的 NuGet 包在哪里?
【发布时间】:2019-05-03 13:16:52
【问题描述】:

我们之前一直通过 SDK 引用我们的 Windows Azure 库,我注意到它们有 NuGet packages for them now。这显然要好得多,所以我将所有这些引用换成 NuGet 包。

但是,我找不到包含 RoleEnvironment 等类的 Microsoft.WindowsAzure.ServiceRuntime.dll 的 NuGet 包。

我们是否应该从 SDK 安装中引用此 dll 而不是 nuget 包?这似乎非常奇怪。我只是没有看到这个程序集的包吗?

我现在已经安装了所有带有“windowsazureofficial”标签的包(只是暂时的),但它们似乎都没有正确的参考!

【问题讨论】:

    标签: c# azure nuget azure-sdk-.net azure-service-runtime


    【解决方案1】:

    最新的Windows Azure SDK is 1.7 因此,如果您需要更新 Microsoft.WindowsAzure.ServiceRuntime,则必须在您的计算机中手动安装 SDK 并将这些引用添加到您的角色。

    【讨论】:

    • 对,我已经做到了。他们将 1.6 和 1.7 SDK 的某些部分包含为 NuGet 包,但不是所有部分,这似乎很奇怪。
    • 这不是违背了 Nuget 包的目的吗? Nuget 应该使与外部库的集成变得容易——当 Nuget 已经可以管理正确的依赖项时,为什么我必须安装 SDK?这需要解决 - 为什么社区需要管理非官方服务运行时
    • @SliverNinja,SDK 还包含模拟器和其他东西,这又依赖于像MS.WA.ServiceRuntime 这样的程序集。没有人需要非官方的服务运行时。
    • @bzlm - 您假设每个人都使用模拟器 - 并非总是如此。我们很少效仿,因为我们已经有一个用于集成 Service Runtime 的预定义模式。 Nuget 使管理不同版本变得更加简单,因为每个开发人员都可能有不同的版本,具体取决于他们更新的频率。如果 Service Runtime 可以像Service Bus 一样进行管理,那就太好了。此外,随着您的项目老化 - 根据部署周期,它可能不会得到更新。这可能会导致维护问题。
    • @SliverNinja,我目前正在尝试将 SDK1.8 .NET4 解决方案升级到 SDK2.0 .NET4.5,这简直是人间地狱。所以我同意你的观点,如果 everything 都通过包进行管理会好 1000 倍。我只是说,由于模拟器与运行时紧密耦合,我可以理解为什么有些程序集在 SDK 文件夹中,而有些程序集是通过包管理的。我认为这对开发人员没有帮助。在磁盘上添加对 SDK 文件夹的引用感觉不对。我还指出,没有人需要非官方的服务运行时。
    【解决方案2】:

    对于仍在战斗的​​任何人,请确保您查看“程序集”>“扩展”;)现在这让我在 3 个月内获得了两次!

    【讨论】:

      【解决方案3】:

      我也遇到过类似的问题。

      选项 1)

      我在我的 Google Drive Storage 中添加了一个 dll 库:Microsoft.WindowsAzure.CloudDrive

      在这种情况下,您应该下载并创建一个“静态”链接。

      选项 2)

      我找到了一个 NuGet 包:

      Azure SDK 2.2 DLLs

      PM> Install-Package AzureSDK2.2DLLs

      如果您需要更多信息,请与我联系。

      【讨论】:

      • 选项 2 就像一种享受!现在这应该是正确的答案了。
      • 选项 2 不是官方的 microsoft 软件包,您应该使用官方二进制文件
      • @Dizzle 包非常旧,已从官方二进制文件中删除,但有需要此依赖项的旧项目。
      【解决方案4】:

      您需要安装要用于构建的特定版本的 Azure SDK。

      实际上您只需要安装它的某些部分,包括参考库(SDK 的多个部分您可以单独下载) - 这取决于您要查找的程序集。

      例如对于 2.2 或 2.3 SDK 和 Microsoft.WindowsAzure.ServiceRuntimeMicrosoft.WindowsAzure.Diagnostics 程序集,您需要 'WindowsAzureAuthoringTools' MSI 安装程序 - 而不是 'WindowsAzureLibsForNet-x64' MSI ,它会安装一些其他的参考库。

      【讨论】:

      • Microsoft.WindowsAzure.ServiceRuntime 当前位于 MicrosoftAzureAuthoringTools Microsoft.WindowsAzure.Diagnostics 当前位于 MicrosoftAzureLibsForNet 两者均可从 Azure SDK for .NET 获得:azure.microsoft.com/en-us/downloads/archive-net-downloads(发布时的 Azure SDK 版本为 2.7)
      【解决方案5】:

      目前似乎没有,但我发现了这个:AnglicanGeek's Unofficial Windows Azure Service Runtime 1.6

      【讨论】:

      • 我刚刚发现,哇,他们不支持这个真的很令人惊讶。我想我会在我们的内部 nuget 服务器上为其创建一个 nuget 包并使用它,直到他们开始制作一个
      【解决方案6】:

      它现在是 NuGet 上的常规包:

      Install-Package Microsoft.WindowsAzure.SDK

      【讨论】:

      • 这是非官方的
      【解决方案7】:

      他们可能不想分发 SDK 的核心部分,因此您仍然需要安装实际的 SDK。我(通过 nuget)向“windowsazureofficial”nuget 软件包的所有者发送了消息,并要求提供反馈,如果我收到回复,我会更新此信息。

      至于升级,首先获取sdk,然后按照升级说明here。引用将自动更新,并且如果可以,它也会将本地引用转换为 nuget 包引用。

      【讨论】:

      • 其他人可以参考Microsoft.WindowsAzure.ServiceRuntime.dll路径Program Files\Microsoft SDKs\Windows Azure\.NET SDK\<sdk_version>\bin\runtimes\base
      • @SliverNinja-MSFT 您是否有机会将此评论作为答案,因为它很容易理解,但实际上解决了我的问题?
      • @Derptastic - 根据请求添加以使更多人发现。
      【解决方案8】:

      列出所有 Azure 包:Azure SDK for .NET

      注意:在下载 SDK 文件之前,请查看安装步骤 了解安装过程和依赖关系 开发工具包。对于 SDK 1.7 及更高版本,请使用安装步骤 包含在下面的手动安装程序链接中。对于 SDK 1.6 和 之前,请按照本页后面列出的安装步骤进行操作。

      【讨论】:

        【解决方案9】:

        您可以在路径中找到Microsoft.WindowsAzure.ServiceRuntime.dll

        Program Files\Microsoft SDKs\Windows Azure\.NET SDK\<sdk_version>\bin\runtimes\base
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2017-04-15
          • 1970-01-01
          • 2018-07-23
          • 1970-01-01
          • 2020-09-06
          • 1970-01-01
          相关资源
          最近更新 更多