为最新的.NET核心获取.NET Web Api的正确依赖关系

时间:2015-10-15 18:40:29

标签: asp.net asp.net-web-api asp.net-core dnx .net-core

所以我尝试以一种在Linux上运行的方式创建ASP.NET Web Api项目(使用.NET Core)。当我在Visual Studio中创建一个新的Web Api项目时,看起来它在ASP.NET 5处于beta5时使用了依赖关系和代码脚手架,到目前为止,如果我使用beta5版本,我已经让它工作了在DNX中使用' dnx web'来运行它。

问题在于我尝试使用最新的rc1版本或至少使用beta8版本,我可以使用' dnvm'来获取这些版本的ASP.NET,但Visual Studio仍然使用旧的依赖和脚手架。

我甚至无法告诉我应该将它们更新到哪个版本,因为不断有新的预发布版本高于beta8,如果我只是将所有内容更新到最新版本,那么一切都无效 - 我无法做到用' dnx web'运行它因为我得到某种奇怪的例外。

有没有办法告诉我 - 应该使用什么版本的依赖项与哪个版本的ASP.NET 5?代码也是如此,因为由于某些方法缺失,显然默认的脚手架代码甚至不能使用最新版本。

现在甚至可以在.NET Core上创建一个可用的Web应用程序吗?因为ASP.NET 5即将发布,所以我认为在这一点上它可以正常工作。

1 个答案:

答案 0 :(得分:2)

这就是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 Tools版本。重新安装或发布从构建系统或运行时(包括IIS)获得的确切消息。

version checking for web tools

编辑:忘了提到这对我来说对于dnx beta7有用(dnx beta8与beta7 VS工具没有)