C# ASP.NET 5-启动ASP.NET vNext项目
我正在尝试用ASP.NET vNext湿润我的脚。我对它的跨平台方面非常感兴趣。出于这个原因,我专注于使用K运行时环境 我看了报纸上提供的样品。但是这些样品对我没有帮助。我有一个项目的结构如下:C# ASP.NET 5-启动ASP.NET vNext项目,c#,asp.net,asp.net-core,C#,Asp.net,Asp.net Core,我正在尝试用ASP.NET vNext湿润我的脚。我对它的跨平台方面非常感兴趣。出于这个原因,我专注于使用K运行时环境 我看了报纸上提供的样品。但是这些样品对我没有帮助。我有一个项目的结构如下: / /client /server /controllers HomeController.cs /views /home Index.cshtml project.json Startup.cs 当我使用project.json导航到目录时,我从命令行运行以
/
/client
/server
/controllers
HomeController.cs
/views
/home
Index.cshtml
project.json
Startup.cs
当我使用project.json导航到目录时,我从命令行运行以下命令
C:\MyProject\server>k web
我得到以下错误:
System.IO.FileLoadException: Could not load file or assembly 'server' or one of its dependencies. General Exception (Exception from HRESULT: 0x80131500)
File name: 'server' ---> Microsoft.Framework.Runtime.Roslyn.RoslynCompilationException: C:\MyProject\server\controllers\HomeController.cs(5,18): error CS0234: The type or namespace name 'Mvc' does not exist in the namespace 'System.Web' (are you missing an assembly reference?)
我觉得Startup.cs
正在寻找一种叫做server
的东西。但它并不存在。我怀疑project.json
中缺少某些内容。但是,我不知道是什么。我的project.json
如下所示:
{
"dependencies": {
"Kestrel": "1.0.0-beta1",
"Microsoft.AspNet.Diagnostics": "1.0.0-beta1",
"Microsoft.AspNet.Hosting": "1.0.0-beta1",
"Microsoft.AspNet.Mvc": "6.0.0-beta1",
"Microsoft.AspNet.Server.WebListener": "1.0.0-beta1"
},
"commands": {
"web": "Microsoft.AspNet.Hosting --server Microsoft.AspNet.Server.WebListener --server.urls http://localhost:5001"
},
"frameworks": {
"aspnet50": {},
"aspnetcore50": {}
}
}
我做错了什么?谢谢大家! 正如蒂姆指出的,你的控制器有些可疑 编译器要求使用
System.Web
,但您不应该使用它。它在什么地方被引用了吗vNext
正在从System.Web移开;我们不应该在MVC6中使用它
您正在使用库存新项目吗?您是否使用最新的CTP/预览版本
如果您使用的是库存新项目,请尝试重新创建该项目。是的,我只通过重新创建股票项目解决了VS 2015中的一个错误
我建议您阅读这篇文章:查看您的完整错误消息-您在
HomeController.cs
第5行的位置18出现编译错误:命名空间“System.Web”中不存在类型或命名空间名称“Mvc”(是否缺少程序集引用?)
这可能导致服务器出现问题。问题出在我的控制器上。我参考了System.Web.Mvc;当我进行更改时,会出现另一个错误:System.FormatException:短开关'-server'未在开关映射中定义。在Microsoft.AspNet.Hosting.Program.Main(String[]args)的Microsoft.Framework.ConfigurationModel.CommandLineConfigurationSource.Load()中,在Microsoft.Framework.ConfigurationModel.ConfigurationModel.Configuration.Add(IConfigurationsour-rce-configurationSource)中,在Microsoft.AspNet.Hosting.Program.Main(String[]args)中。我用一些建议更新了我的答案,希望能解决你的问题。请随时向我们通报最新情况。