为最新的 .NET 核心获取 .NET Web Api 的正确依赖项
Getting the correct dependencies for .NET Web Api for the latest .NET core
所以我正在尝试创建一个 ASP.NET Web Api 项目,其方式也适用于 Linux(使用 .NET Core)。当我在 Visual Studio 中创建一个新的 Web Api 项目时,看起来它使用了 ASP.NET 5 处于 beta5 时的依赖项和代码脚手架,到目前为止我已经让它工作了, 如果我在 DNX 中使用 beta5 版本 运行 它与 'dnx web'.
问题是我正在尝试使用最新的 rc1 版本或至少是 beta8,我可以使用 'dnvm' 获得 ASP.NET 的那些版本,但 Visual Studio 仍然创建使用旧依赖项和脚手架的项目。
我什至不知道我应该将它们更新到哪个版本,因为不断有比 beta8 更高的新预发布版本,如果我只是将所有内容更新到最新版本,那么没有任何效果 - 我不能 运行 它与 'dnx web' 因为我得到了某种奇怪的异常。
那么有没有办法告诉我应该使用什么版本的依赖项和什么版本的 ASP.NET 5?代码也是如此,因为显然由于缺少某些方法,默认的脚手架代码甚至不能与最新版本一起使用。
现在甚至可以在 .NET Core 上创建一个可用的 Web 应用程序吗?因为 ASP.NET 5 即将发布,所以我认为到这个时候它就可以正常工作了。
这就是 ASP.NET 和 Web Tools 2015 (Beta7) 为我所做的。我想 beta8 (http://www.microsoft.com/en-us/download/details.aspx?id=49442) 将构建 beta8 包。
"dependencies": {
"EntityFramework.Commands": "7.0.0-beta7",
"EntityFramework.SqlServer": "7.0.0-beta7",
"Microsoft.AspNet.Authentication.Cookies": "1.0.0-beta7",
"Microsoft.AspNet.Authentication.Facebook": "1.0.0-beta7",
"Microsoft.AspNet.Authentication.Google": "1.0.0-beta7",
"Microsoft.AspNet.Authentication.MicrosoftAccount": "1.0.0-beta7",
"Microsoft.AspNet.Authentication.Twitter": "1.0.0-beta7",
"Microsoft.AspNet.Diagnostics": "1.0.0-beta7",
"Microsoft.AspNet.Diagnostics.Entity": "7.0.0-beta7",
"Microsoft.AspNet.Identity.EntityFramework": "3.0.0-beta7",
"Microsoft.AspNet.Mvc": "6.0.0-beta7",
"Microsoft.AspNet.Mvc.TagHelpers": "6.0.0-beta7",
"Microsoft.AspNet.Server.IIS": "1.0.0-beta7",
"Microsoft.AspNet.Server.WebListener": "1.0.0-beta7",
"Microsoft.AspNet.StaticFiles": "1.0.0-beta7",
"Microsoft.AspNet.Tooling.Razor": "1.0.0-beta7",
"Microsoft.Framework.Configuration.Abstractions": "1.0.0-beta7",
"Microsoft.Framework.Configuration.Json": "1.0.0-beta7",
"Microsoft.Framework.Configuration.UserSecrets": "1.0.0-beta7",
"Microsoft.Framework.Logging": "1.0.0-beta7",
"Microsoft.Framework.Logging.Console": "1.0.0-beta7",
"Microsoft.Framework.Logging.Debug" : "1.0.0-beta7",
"Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.0.0-beta7"
},
编辑:对于 WebAPI,这是:
"dependencies": {
"Microsoft.AspNet.Mvc": "6.0.0-beta7",
"Microsoft.AspNet.Server.IIS": "1.0.0-beta7",
"Microsoft.AspNet.Server.WebListener": "1.0.0-beta7",
"Microsoft.AspNet.StaticFiles": "1.0.0-beta7"
},
很可能您使用的是旧版本的 VS 工具。您可以在帮助菜单中的关于 Visual Studio 下检查您的 ASP.NET 和 Web 工具的版本。重新安装或 post 您从构建系统或运行时(包括 IIS)获得的确切消息。
编辑:忘了说这对我适用于 dnx beta7(dnx beta8 with beta7 VS 工具不支持)
所以我正在尝试创建一个 ASP.NET Web Api 项目,其方式也适用于 Linux(使用 .NET Core)。当我在 Visual Studio 中创建一个新的 Web Api 项目时,看起来它使用了 ASP.NET 5 处于 beta5 时的依赖项和代码脚手架,到目前为止我已经让它工作了, 如果我在 DNX 中使用 beta5 版本 运行 它与 'dnx web'.
问题是我正在尝试使用最新的 rc1 版本或至少是 beta8,我可以使用 'dnvm' 获得 ASP.NET 的那些版本,但 Visual Studio 仍然创建使用旧依赖项和脚手架的项目。
我什至不知道我应该将它们更新到哪个版本,因为不断有比 beta8 更高的新预发布版本,如果我只是将所有内容更新到最新版本,那么没有任何效果 - 我不能 运行 它与 'dnx web' 因为我得到了某种奇怪的异常。
那么有没有办法告诉我应该使用什么版本的依赖项和什么版本的 ASP.NET 5?代码也是如此,因为显然由于缺少某些方法,默认的脚手架代码甚至不能与最新版本一起使用。
现在甚至可以在 .NET Core 上创建一个可用的 Web 应用程序吗?因为 ASP.NET 5 即将发布,所以我认为到这个时候它就可以正常工作了。
这就是 ASP.NET 和 Web Tools 2015 (Beta7) 为我所做的。我想 beta8 (http://www.microsoft.com/en-us/download/details.aspx?id=49442) 将构建 beta8 包。
"dependencies": {
"EntityFramework.Commands": "7.0.0-beta7",
"EntityFramework.SqlServer": "7.0.0-beta7",
"Microsoft.AspNet.Authentication.Cookies": "1.0.0-beta7",
"Microsoft.AspNet.Authentication.Facebook": "1.0.0-beta7",
"Microsoft.AspNet.Authentication.Google": "1.0.0-beta7",
"Microsoft.AspNet.Authentication.MicrosoftAccount": "1.0.0-beta7",
"Microsoft.AspNet.Authentication.Twitter": "1.0.0-beta7",
"Microsoft.AspNet.Diagnostics": "1.0.0-beta7",
"Microsoft.AspNet.Diagnostics.Entity": "7.0.0-beta7",
"Microsoft.AspNet.Identity.EntityFramework": "3.0.0-beta7",
"Microsoft.AspNet.Mvc": "6.0.0-beta7",
"Microsoft.AspNet.Mvc.TagHelpers": "6.0.0-beta7",
"Microsoft.AspNet.Server.IIS": "1.0.0-beta7",
"Microsoft.AspNet.Server.WebListener": "1.0.0-beta7",
"Microsoft.AspNet.StaticFiles": "1.0.0-beta7",
"Microsoft.AspNet.Tooling.Razor": "1.0.0-beta7",
"Microsoft.Framework.Configuration.Abstractions": "1.0.0-beta7",
"Microsoft.Framework.Configuration.Json": "1.0.0-beta7",
"Microsoft.Framework.Configuration.UserSecrets": "1.0.0-beta7",
"Microsoft.Framework.Logging": "1.0.0-beta7",
"Microsoft.Framework.Logging.Console": "1.0.0-beta7",
"Microsoft.Framework.Logging.Debug" : "1.0.0-beta7",
"Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.0.0-beta7"
},
编辑:对于 WebAPI,这是:
"dependencies": {
"Microsoft.AspNet.Mvc": "6.0.0-beta7",
"Microsoft.AspNet.Server.IIS": "1.0.0-beta7",
"Microsoft.AspNet.Server.WebListener": "1.0.0-beta7",
"Microsoft.AspNet.StaticFiles": "1.0.0-beta7"
},
很可能您使用的是旧版本的 VS 工具。您可以在帮助菜单中的关于 Visual Studio 下检查您的 ASP.NET 和 Web 工具的版本。重新安装或 post 您从构建系统或运行时(包括 IIS)获得的确切消息。
编辑:忘了说这对我适用于 dnx beta7(dnx beta8 with beta7 VS 工具不支持)