Azure 通知中心包是不是与 .NET Core 兼容?
Posted
技术标签:
【中文标题】Azure 通知中心包是不是与 .NET Core 兼容?【英文标题】:Is Azure Notification Hubs package compatible with .NET Core?Azure 通知中心包是否与 .NET Core 兼容? 【发布时间】:2016-11-13 18:44:57 【问题描述】:我正在使用 .NET 核心应用程序,我发现一些 Azure 包不兼容,例如 NotificationHubs 和 SendGrid:
Package Microsoft.Azure.NotificationHubs 1.0.5 is not compatible with netcoreapp1.0 (.NETCoreApp,Version=v1.0)
The dependency SendGrid.CSharp.HTTP.Client 2.0.4 does not support framework .NETCoreApp, Version=v1.0
我只尝试添加 NotificationHubs 和 SendGrid。我什至还没有尝试过任何 ActiveDirectory 包。
有人知道这些软件包中的某些是否会很快兼容吗?或者也许我做错了什么?或者 .NET 核心应用程序中是否有方法可以引用旧包?
谢谢!
【问题讨论】:
你是部署在 Azure 还是 Linux 环境? 我正在部署到 Azure。我使用 RC1 完成了所有工作,并看到 .NET 核心正式发布。我正在测试看看将所有内容迁移到 .NET 核心有多么困难,而且我在一些 Azure 的东西上遇到了困难...... :( 【参考方案1】:[2017 年 11 月 30 日更新] 与 .NET Core 兼容的Microsoft.Azure.NotificationHubs 2.0.0-preview1 刚刚发布。
[原始答案] 截至 2016 年 7 月中旬,Azure 通知中心 SDK 不适用于 .NET 核心。产品团队正在努力,但还没有预计到达时间。
目前,有两种解决方法:
使用WindowsAzure.Messaging.Managed
Nuget 包,如Getting started with Notification Hubs for Windows Universal Platform Apps 中所述
通过REST APIs。 (List of methods.)
【讨论】:
大街上的一句话是应该在接下来的两周内发布。 @lucuma,预览版的预计到达时间仍是下周末。据我了解,这将是一个预览,因为 API 已经完成(与现有 API 相同),但如果客户报告在测试中出现的稳定性问题,内部可能需要在这里和那里进行调整。 @TastesLikeTurkey,我曾经在产品团队工作,并问过那里的人。我的理解是会发布到Microsoft.Azure.NotificationHubs NuGet package feed @kspearrin,对于不确定性,我深表歉意。我被告知该软件包已经在发布过程中。与它相关的包和 Azure 更新(因为有相当多的变化)都将在本周推出。 Microsoft.Azure.NotificationHubs 2.0.0-preview1 已在大约一小时前发布。【参考方案2】:如果您在 Azure 上工作,则无需使用 netcoreapp
即可使用 ASP.NET Core。你仍然可以通过定位 net461
而不是 netcoreapp1.0
来使用带有完整框架的 ASP.NET Core,它仍然可以工作,Azure 有完整框架可用,它们都与相同版本的 NetStandard 兼容。
我们有几个 Web 应用程序在 netcoreapp1.0
上运行,其他一些在 net461
上运行由于包依赖性(如 Azure SDK),并且都在 ASP.NET Core 上运行。
当产品团队开始发布 .Net Core App 兼容包时,只需重新定位 netcoreapp1.0
并添加 Microsoft.NETCore.App
包,它就会继续工作。
Sample github repo of an Azure Web App using ASP.Net Core with Full Framework
【讨论】:
感谢所有有用的建议。由于我们仍在构建移动应用程序,距离发布还有几个月的时间,我想我会尝试使用最新的核心来获取网络应用程序,而不是在上线后更新它。不幸的是,我可能无法做到这一点。即使添加对 .NETStandard 类库的引用也不起作用....包 Microsoft.Azure.ActiveDirectory.GraphClient 2.1.0 与 netstandard1.6 (.NETStandard,Version=v1.6) 不兼容 有没有办法可以将这两个答案都标记为已接受?他们都为如何进行提供了很好的建议。再次感谢。 不要添加对NetStandard的引用,直接使用net461
,查看repo's project.json :)以上是关于Azure 通知中心包是不是与 .NET Core 兼容?的主要内容,如果未能解决你的问题,请参考以下文章
csharp .NET Core中的Azure通知中心REST API [读取/删除通道的所有注册]
如果生存时间大于 1 天,Azure 通知中心注册到期日期不会更新