在Ubuntu 16.04上运行简单的.Net Core MVC应用程序时发生内部服务器错误

在Ubuntu上使用.Net core 1.0运行一个简单的“hello world”应用程序时,出现内部服务器错误。 我敢肯定,我错过了一些简单的东西,但无法弄清楚它是什么。 它正在工作,直到我取代return Content("Hello, world!");return View(); 在HomeController中,并using System.IO;添加using System.IO;.UseContentRoot(Directory.GetCurrentDirectory())到Program.cs。

我已经尝试将SystemSystem.X添加到我在Startup.cs中的依赖列表中,无济于事。

Program.cs中

 using Microsoft.AspNetCore.Hosting; using System.IO; namespace aspnetcoreapp { public class Program { public static void Main(string[] args) { var host = new WebHostBuilder() .UseKestrel() .UseContentRoot(Directory.GetCurrentDirectory()) .UseStartup<Startup>() .Build(); host.Run(); } } } 

project.json

 { "version": "1.0.0-*", "buildOptions": { "debugType": "portable", "emitEntryPoint": true }, "dependencies": { "Microsoft.AspNetCore.Diagnostics": "1.0.0", "Microsoft.AspNetCore.Mvc": "1.0.0", "Microsoft.AspNetCore.Server.Kestrel": "1.0.0", "Microsoft.AspNetCore.StaticFiles": "1.0.0", "Microsoft.NETCore.App": { "type": "platform", "version": "1.0.0" } }, "frameworks": { "netcoreapp1.0": {} } } 

Startup.cs

 using Microsoft.AspNetCore.Builder; using Microsoft.Extensions.DependencyInjection; namespace aspnetcoreapp { public class Startup { public void ConfigureServices(IServiceCollection services) { services.AddMvc(); } public void Configure(IApplicationBuilder app) { app.UseDeveloperExceptionPage(); app.UseStaticFiles(); app.UseMvc(); } } } 

HomeController.cs

 using Microsoft.AspNetCore.Mvc; namespace aspnetcoreapp { [Route("/")] [Route("[controller]")] public class HomeController : Controller { public IActionResult Index() { return View(); } } } 

dotnet运行

 Project aspnetcoreapp (.NETCoreApp,Version=v1.0) will be compiled because inputs were modified Compiling aspnetcoreapp for .NETCoreApp,Version=v1.0 Compilation succeeded. 0 Warning(s) 0 Error(s) Time elapsed 00:00:01.0784778 Hosting environment: Production Content root path: /home/cvandal/code/aspnetcoreapp Now listening on: http://localhost:5000 Application started. Press Ctrl+C to shut down. 

结果

编译处理此请求所需的资源时发生错误。 请仔细阅读以下具体的错误细节,并适当修改您的源代码。

生成的代码

使用System无法findtypes或名称空间名称“System”(缺less使用指令或程序集引用? 使用System.Linq找不到types或名称空间名称“System”(缺less使用指令或程序集引用? 使用System.Collections.Generic找不到types或名称空间名称“System”(缺lessusing指令或程序集引用? 使用Microsoft.AspNetCore.Mvc.ViewFeatures命名空间的名称空间“Microsoft.AspNetCore.Mvc”(您是否缺less程序集引用?)中不存在types或名称空间名称“ViewFeatures” 使用System.Threading.Tasks找不到types或名称空间名称“System”(缺less使用指令或程序集引用? 无法定义使用“dynamic”的类或成员,因为找不到编译器所需的types“System.Runtime.CompilerServices.DynamicAttribute”。 你错过了一个参考吗? 公共类_Views_Home_Index_cshtml:Microsoft.AspNetCore.Mvc.Razor.RazorPage预定义types'System.Boolean'未定义或导入公共类_Views_Home_Index_cshtml:Microsoft.AspNetCore.Mvc.Razor.RazorPagetypes'对象'是在程序集中定义未被引用。 您必须添加对程序集“System.Runtime,Version = 4.1.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a”的引用。 公共类_Views_Home_Index_cshtml:Microsoft.AspNetCore.Mvc.Razor.RazorPagetypes“对象”在未引用的程序集中定义。 您必须添加对程序集“System.Runtime,Version = 4.1.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a”的引用。 公共Microsoft.AspNetCore.Mvc.ViewFeatures.IModelExpressionProvider ModelExpressionProvider {get; 私人设置 }预定义types“System.Object”没有定义或导入公共Microsoft.AspNetCore.Mvc.ViewFeatures.IModelExpressionProvider ModelExpressionProvider {get; 私人设置 }命名空间“Microsoft.AspNetCore.Mvc”中不存在types或命名空间名称“ViewFeatures”(是否缺less程序集引用?)public Microsoft.AspNetCore.Mvc.ViewFeatures.IModelExpressionProvider ModelExpressionProvider {get; 私人设置 }预定义的types“System.Void”未定义或导入公共Microsoft.AspNetCore.Mvc.ViewFeatures.IModelExpressionProvider ModelExpressionProvider {获取; 私人设置 }“对象”types是在未引用的程序集中定义的。 您必须添加对程序集“System.Runtime,Version = 4.1.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a”的引用。 公共Microsoft.AspNetCore.Mvc.IUrlHelperurl{get; 私人设置 }预定义types“System.Object”未定义或导入公共Microsoft.AspNetCore.Mvc.IUrlHelper Url {get; 私人设置 }命名空间“Microsoft.AspNetCore.Mvc”中不存在types或命名空间名称“IUrlHelper”(是否缺less程序集引用?)public Microsoft.AspNetCore.Mvc.IUrlHelper Url {get; 私人设置 }预定义types'System.Void'没有定义或导入公共Microsoft.AspNetCore.Mvc.IUrlHelper Url {get; 私人设置 }“对象”types是在未引用的程序集中定义的。 您必须添加对程序集“System.Runtime,Version = 4.1.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a”的引用。 公共Microsoft.AspNetCore.Mvc.IViewComponentHelper组件{get; 私人设置 }预定义types'System.Object'未定义或导入公共Microsoft.AspNetCore.Mvc.IViewComponentHelper组件{get; 私人设置 }名称空间“Microsoft.AspNetCore.Mvc”中不存在types或命名空间名称“IViewComponentHelper”(是否缺less程序集引用?)public Microsoft.AspNetCore.Mvc.IViewComponentHelper Component {get; 私人设置 }预定义types'System.Void'未定义或导入公共Microsoft.AspNetCore.Mvc.IViewComponentHelper组件{获取; 私人设置 }“对象”types是在未引用的程序集中定义的。 您必须添加对程序集“System.Runtime,Version = 4.1.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a”的引用。 public Microsoft.AspNetCore.Mvc.Rendering.IJsonHelper Json {get; 私人设置 }预定义types'System.Object'未定义或导入公共Microsoft.AspNetCore.Mvc.Rendering.IJsonHelper Json {get; 私人设置 }命名空间'Microsoft.AspNetCore.Mvc.Rendering'中不存在types或名称空间名称'IJsonHelper'(是否缺less程序集引用?)public Microsoft.AspNetCore.Mvc.Rendering.IJsonHelper Json {get; 私人设置 }预定义types'System.Void'没有定义或导入公共Microsoft.AspNetCore.Mvc.Rendering.IJsonHelper Json {get; 私人设置 }“对象”types是在未引用的程序集中定义的。 您必须添加对程序集“System.Runtime,Version = 4.1.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a”的引用。 public Microsoft.AspNetCore.Mvc.Rendering.IHtmlHelper Html {get; 私人设置 }预定义types'System.Object'未定义或导入公共Microsoft.AspNetCore.Mvc.Rendering.IHtmlHelper Html {get; 私人设置 }名称空间“Microsoft.AspNetCore.Mvc.Rendering”中不存在types或名称空间名称“IHtmlHelper <>”(是否缺less程序集引用?)public Microsoft.AspNetCore.Mvc.Rendering.IHtmlHelper Html {get; 私人设置 }“对象”types是在未引用的程序集中定义的。 您必须添加对程序集“System.Runtime,Version = 4.1.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a”的引用。 public Microsoft.AspNetCore.Mvc.Rendering.IHtmlHelper Html {get; 私人设置 }预定义types'System.Object'未定义或导入公共Microsoft.AspNetCore.Mvc.Rendering.IHtmlHelper Html {get; 私人设置 }由于无法find编译器所需的types“System.Runtime.CompilerServices.DynamicAttribute”,无法定义使用“dynamic”的类或成员。 你错过了一个参考吗? public Microsoft.AspNetCore.Mvc.Rendering.IHtmlHelper Html {get; 私人设置 }预定义types'System.Boolean'未定义或导入公共Microsoft.AspNetCore.Mvc.Rendering.IHtmlHelper Html {get; 私人设置 }预定义types'System.Void'没有定义或导入公共的Microsoft.AspNetCore.Mvc.Rendering.IHtmlHelper Html {get; 私人设置 }asynchronous方法的返回types必须为void,任务或任务public override async Task ExecuteAsync()types“Object”在未引用的程序集中定义。 您必须添加对程序集“System.Runtime,Version = 4.1.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a”的引用。 公共覆盖asynchronous任务ExecuteAsync()预定义的types'System.Object'未定义或导入公共覆盖asynchronous任务ExecuteAsync()无法findtypes或名称空间名称'任务'(您是否缺lessusing指令或程序集引用? )public override async Task ExecuteAsync()'_Views_Home_Index_cshtml.ExecuteAsync()':返回types必须是'Task'以匹配重写成员'RazorPage.ExecuteAsync()'public override async Task ExecuteAsync()types'Task'在未引用的程序集。 您必须添加对程序集“System.Threading.Tasks,Version = 4.0.10.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a”的引用。 公共覆盖asynchronous任务ExecuteAsync()预定义types'System.Void'未定义或导入公共_Views_Home_Index_cshtml(){}types'对象'是在未引用的程序集中定义。 您必须添加对程序集“System.Runtime,Version = 4.1.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a”的引用。 [Microsoft.AspNetCore.Mvc.Razor.Internal.RazorInjectAttribute]预定义的types'System.Object'未定义或导入[Microsoft.AspNetCore.Mvc.Razor.Internal.RazorInjectAttribute]types'属性'在一个程序集中定义未被引用。 您必须添加对程序集“System.Runtime,Version = 4.1.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a”的引用。 [Microsoft.AspNetCore.Mvc.Razor.Internal.RazorInjectAttribute]预定义的types'System.Void'未定义或导入[Microsoft.AspNetCore.Mvc.Razor.Internal.RazorInjectAttribute]types'对象'在一个程序集中定义未被引用。 您必须添加对程序集“System.Runtime,Version = 4.1.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a”的引用。 [Microsoft.AspNetCore.Mvc.Razor.Internal.RazorInjectAttribute]预定义的types'System.Object'未定义或导入[Microsoft.AspNetCore.Mvc.Razor.Internal.RazorInjectAttribute]types'属性'在一个程序集中定义未被引用。 您必须添加对程序集“System.Runtime,Version = 4.1.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a”的引用。 [Microsoft.AspNetCore.Mvc.Razor.Internal.RazorInjectAttribute]预定义的types'System.Void'未定义或导入[Microsoft.AspNetCore.Mvc.Razor.Internal.RazorInjectAttribute]types'对象'在程序集中定义未被引用。 您必须添加对程序集“System.Runtime,Version = 4.1.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a”的引用。 [Microsoft.AspNetCore.Mvc.Razor.Internal.RazorInjectAttribute]预定义的types'System.Object'未定义或导入[Microsoft.AspNetCore.Mvc.Razor.Internal.RazorInjectAttribute]types'属性'在一个程序集中定义未被引用。 您必须添加对程序集“System.Runtime,Version = 4.1.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a”的引用。 [Microsoft.AspNetCore.Mvc.Razor.Internal.RazorInjectAttribute]预定义的types'System.Void'未定义或导入[Microsoft.AspNetCore.Mvc.Razor.Internal.RazorInjectAttribute]types'对象'在程序集中定义未被引用。 您必须添加对程序集“System.Runtime,Version = 4.1.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a”的引用。 [Microsoft.AspNetCore.Mvc.Razor.Internal.RazorInjectAttribute]预定义的types'System.Object'未定义或导入[Microsoft.AspNetCore.Mvc.Razor.Internal.RazorInjectAttribute]types'属性'在一个程序集中定义未被引用。 您必须添加对程序集“System.Runtime,Version = 4.1.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a”的引用。 [Microsoft.AspNetCore.Mvc.Razor.Internal.RazorInjectAttribute]预定义的types'System.Void'未定义或导入[Microsoft.AspNetCore.Mvc.Razor.Internal.RazorInjectAttribute]types'对象'在一个程序集中定义未被引用。 您必须添加对程序集“System.Runtime,Version = 4.1.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a”的引用。 [Microsoft.AspNetCore.Mvc.Razor.Internal.RazorInjectAttribute]预定义的types'System.Object'未定义或导入[Microsoft.AspNetCore.Mvc.Razor.Internal.RazorInjectAttribute]types'属性'在一个程序集中定义未被引用。 您必须添加对程序集“System.Runtime,Version = 4.1.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a”的引用。 [Microsoft.AspNetCore.Mvc.Razor.Internal.RazorInjectAttribute]预定义types'System.Void'未定义或导入[Microsoft.AspNetCore.Mvc.Razor.Internal.RazorInjectAttribute]预定义types'System.Void'未定义或导入public _Views_Home_Index_cshtml()预定义的types“System.Int32”未定义或导入BeginContext(0,181,true); 预定义types“System.Int32”未定义或导入BeginContext(0,181,true); 预定义types“System.Boolean”未定义或导入BeginContext(0,181,true); “对象”types是在未引用的程序集中定义的。 您必须添加对程序集“System.Runtime,Version = 4.1.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a”的引用。 BeginContext(0,181,true); 预定义types“System.Object”未定义或导入BeginContext(0,181,true); 预定义types“System.Void”未定义或导入BeginContext(0,181,true); 预定义types“System.String”未定义或导入WriteLiteral(“\ n \ n \ n \ n \ n \ n aspnetcoreapp \ n
\ n \ n \ n

你好,世界!

\ n
\ n \ n“);types'Object'是在未引用的程序集中定义的,您必须添加对程序集”System.Runtime,Version = 4.1.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a“的引用WriteLiteral (“\ n \ n \ n \ n \ n \ n aspnetcoreapp \ n”
\ n \ n \ n

你好,世界!

\ n
\ n \ n \ n“);预定义的types'System.Object'没有被定义或导入WriteLiteral(”\ n \ n \ n \ n \ n \ n aspnetcoreapp \ n
\ n \ n \ n

你好,世界!

\ n
\ n \ n“);预定义types”System.Void“未定义或导入WriteLiteral(”\ n \ n \ n \ n \ n \ n aspnetcoreapp \ n
\ n \ n \ n

你好,世界!

\ n
\ n \ n“);types'Object'是在未引用的程序集中定义的,您必须添加对程序集”System.Runtime,Version = 4.1.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a“的引用。 ();未定义或导入预定义types'System.Object'EndContext();未定义或导入预定义types'System.Void'EndContext();'_Views_Home_Index_cshtml.ExecuteAsync()':不是所有代码path都返回一个值公共覆盖asynchronous任务ExecuteAsync()

Solutions Collecting From Web of "在Ubuntu 16.04上运行简单的.Net Core MVC应用程序时发生内部服务器错误"