【问题标题】:MVC System.Web.HttpCompileException on Html.RenderPartialHtml.RenderPartial 上的 MVC System.Web.HttpCompileException
【发布时间】:2015-10-15 00:39:08
【问题描述】:

当我的视图调用Html.RederPartial 时,我得到一个System.Web.HttpCompileException。异常消息是:

附加信息:外部组件已抛出异常。

我已经检查过:

  • 控制器不抛出异常
  • 部分视图确实存在
  • 控制器传递的Model和视图接收到的Model是一样的。
  • InnerException 为空

异常听起来应该是 html 或 razor 格式错误或不正确,但解决方案构建良好。不久前它还在工作,所以我猜,我错过了一些愚蠢的东西......

我的问题:

有谁知道如何知道导致此异常的原因?或者有没有办法获取有关异常的更多信息?

编辑:这是 StackTrace

在 System.Web.Compilation.AssemblyBuilder.Compile() 在 System.Web.Compilation.BuildProvidersCompiler.PerformBuild() 在 System.Web.Compilation.BuildManager.CompileWebFile(VirtualPath virtualPath) 在 System.Web.Compilation.BuildManager.GetVPathBuildResultInternal(VirtualPath virtualPath, Boolean noBuild, Boolean ...

【问题讨论】:

  • 你想怎么称呼这个?发布一些代码,我们可能会帮助你。这种方式太笼统了。

标签: c# asp.net-mvc razor partial-views


【解决方案1】:

原来这是我的一个愚蠢的错误。 MVC 无法从Razor 编译Html,因为我在Model 中重命名了一个属性,但没有在.cshtml 中更新它。

在编译时打开 Razor Build 错误。编辑您的 csproj 文件并设置以下内容:

<MvcBuildViews>true</MvcBuildViews>

感谢 JP 提供此SO post

【讨论】:

  • 您的回答节省了我的时间。谢谢。
【解决方案2】:

我发现我的 HTML 部分之一,即 *.cshtml 文件缺少引用。通常,当任何有错误的 cshtml 页面在编译时不会显示,尽管您可以使用调试点跟踪它

【讨论】:

    【解决方案3】:

    我们解决了“外部组件引发了异常”。通过回收应用程序池来发布。这是在做其他事情之前的快速方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多