C# MVC 处理视图中的编译错误,例如缺少程序集参考? [复制]
Posted
技术标签:
【中文标题】C# MVC 处理视图中的编译错误,例如缺少程序集参考? [复制]【英文标题】:C# MVC Handle compilation error in views e.g. missing an assembly reference? [duplicate] 【发布时间】:2018-07-05 12:34:27 【问题描述】:我的问题是关于处理“缺少程序集引用?”之类的错误。在视图中特别是 layout.cshtml
例如如果我在 layout.cshtml 的 Head 标记中有一些代码
<head>
@
@
try
var EnableSomething = BusinessLogic.MyBLL.GetSetting("SettingName");
catch
</head>
这将正常工作,但如果有人来将 Layout.cshtml 中的“MyBLL”更改为“MyBLL1”或删除 BusinessLogic DLL 或更改 DLL,以使该 DLL 中不存在“MyBLL”。
是否有办法在 layout.cshtml 本身中处理这种情况? 我知道这是一个奇怪的情况,但只是想知道是否有任何方法可以处理这种情况。
谢谢大家。
【问题讨论】:
该代码属于您的控制器,而不是视图。 MyBLL 是上课吗? BusinessLogic 是命名空间吗? @StephenMuecke 你是对的,这段代码应该在控制器中,但在这种情况下它在视图中( layout.cshtml )。当有人在上述情况下请求页面时,它会给出编译错误。 @daniel.shih 是的,没错。 @Deepak 你已经知道你的问题是什么了。代码在,它不应该在的地方。移动它并获得编译时错误。使用 viewmodel 或 ViewData 将信息传递到视图中 【参考方案1】:你可以尝试安装RazorGenerator的Nuget
如果构建视图失败会导致构建中断,所以在“MyBLL”到“MyBLL1”的情况下
【讨论】:
以上是关于C# MVC 处理视图中的编译错误,例如缺少程序集参考? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
缺少定义 MVC 视图 Visual Studio Intellisense