用于 ASP.NET Core 5 MVC 的 NuGet 包
Posted
技术标签:
【中文标题】用于 ASP.NET Core 5 MVC 的 NuGet 包【英文标题】:NuGet package for ASP.NET Core 5 MVC 【发布时间】:2021-10-18 22:49:16 【问题描述】:我应该使用什么 NuGet 包从我的 ASP.NET Core MVC 5.0 项目访问 Twilio API?
我的 ASP.NET Core 项目文件针对 net5.0。我包含了Twilio.AspNet.Mvc
NuGet 包(最新版本)。
当我的项目构建时,我收到一堆警告,告诉我某些东西正在拉入过时版本的 Microsoft 程序集。
例如:
警告 NU1701 包“Microsoft.AspNet.Mvc 3.0.20105.1”已使用“.NETFramework,Version=v4.6.1,.NETFramework,Version=v4.6.2,.NETFramework,Version=v4.7,.NETFramework, Version=v4.7.1, .NETFramework,Version=v4.7.2, .NETFramework,Version=v4.8' 而不是项目目标框架'net5.0'。此软件包可能与您的项目不完全兼容。
经过一番调查,问题似乎是因为Twilio.AspNet.Mvc
(v5.37.2) 引入了Microsoft.AspNet.Mvc
(v3.0.20105.1)。
那个包有一个警告:
使用 '.NETFramework,Version=v4.6.1, .NETFramework,Version=v4.6.2, .NETFramework,Version=v4.7, .NETFramework,Version= 恢复包 'Twilio.AspNet.Mvc 5.37.2' v4.7.1, .NETFramework,Version=v4.7.2, .NETFramework,Version=v4.8' 而不是项目目标框架'net5.0'。此软件包可能与您的项目不完全兼容。
我尝试删除并重新安装 Twilio 包,但没有帮助。
【问题讨论】:
【参考方案1】:The package documentation 表示你应该使用Twilio.AspNet.Core
。
【讨论】:
我被微软混乱的命名法误导了(见***.com/a/51391202)。 Twilio.AspNet.Core 包的文档说它“用于 .NET Core 上的 ASP.NET Core 1-2”。我以为我读过微软将最新的一切称为“.Net 5”和“ASP.Net Core 5”(或类似的)。我认为 Twilio.AspNet.Core 包现在已经过时了。傻我。以上是关于用于 ASP.NET Core 5 MVC 的 NuGet 包的主要内容,如果未能解决你的问题,请参考以下文章
ASP.NET MVC 5、ASP.NET Core MVC 5 有啥区别?
备忘ASP.NET MVC 5 升级到 ASP.NET Core MVC 的部分变化
ASP.NET 5/ASP.NET Core 1 中的关注点分离和 n 层架构
如何使用 EF Core 代码优先迁移为 ASP.NET Core MVC 配置 N 层架构