将ASP.NET从RC1升级到核心后的Razor异常

时间:2016-08-03 09:26:03

标签: asp.net .net asp.net-mvc razor asp.net-core

我有一个正在运行的ASP.NET 5 RC1应用程序。现在我已经在Shawn Wildermuth的博客的帮助下将应用程序转换为当前的ASP.NET Core 1.0.0版本。 api控制器运行没有任何问题。但是一旦我尝试打开* .cshtml文件,我就会收到以下错误:

  

Microsoft.AspNetCore.Server.Kestrel:错误:连接ID   “0HKTRFIA80GPS”:应用程序抛出了未处理的异常。

     

Microsoft.AspNetCore.Mvc.Razor.Compilation.CompilationFailedException:   发生了一个或多个编译失败:

     

rkq2e32e.x02(16,11):错误   CS0246:找不到类型或命名空间名称“System”(是   你错过了使用指令或程序集引用?)

...

  

rkq2e32e.x02(37,10):错误CS0012:“对象”类型定义为   未引用的程序集。您必须添加对程序集的引用   'mscorlib,版本= 4.0.0.0,文化=中性,   公钥= b77a5c561934e089' 。

     

rkq2e32e.x02(37,10):错误CS0518:未定义或导入预定义类型“System.Object”

有人知道我可以从哪里开始吗?

1 个答案:

答案 0 :(得分:1)

通过将project.json与来自正在运行的ASP.NET Core版本的新project.json进行比较,我找到了异常的原因。实际上我没有找到原因 - 我刚刚发现添加了preserveCompilationContext后的异常 - 我的project.json的真实条目:

"buildOptions": {
    "emitEntryPoint": true,
    "preserveCompilationContext": true
 }