C# 视图中的Asp.Net MVC2错误
我是MVC新手,我一直在关注Steven Anderson Pro ASP.Net MVC 2框架书,但遇到了以下问题 位于my site.Master文件中的以下代码行引发以下错误:C# 视图中的Asp.Net MVC2错误,c#,asp.net-mvc-2,C#,Asp.net Mvc 2,我是MVC新手,我一直在关注Steven Anderson Pro ASP.Net MVC 2框架书,但遇到了以下问题 位于my site.Master文件中的以下代码行引发以下错误: <% Html.RenderAction("Menu", "Nav"); %> {“执行处理程序'System.Web.Mvc.HttpHandlerUtil+ServerExecuteHttpHandlerAsyncWrapper'的子请求时出错”。} 问题似乎在我试图呈现上述代码结果的局部视
<% Html.RenderAction("Menu", "Nav"); %>
{“执行处理程序'System.Web.Mvc.HttpHandlerUtil+ServerExecuteHttpHandlerAsyncWrapper'的子请求时出错”。}
问题似乎在我试图呈现上述代码结果的局部视图中
浏览器中显示的实际错误如下所示:
无法加载类型
System.Web.Mvc.ViewUserControl
我的部分观点包括:
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<IEnumerable<WebUI.Models.NavLink>>" %>
<%foreach (var link in Model) { %>
<%: Html.RouteLink(link.Text, link.RouteValues }%>
该模型似乎也没有可用的智能感知
我知道这与继承有关,但我检查了名称空间,这似乎是正确的
在此方面的任何帮助都将不胜感激
提前感谢我从那本书的第一版中找到了安德森的例子。我注意到,我的NavLink是在Controllers/NavController.cs中定义的,它的命名空间是WebUI.Controllers,而不是WebUI.Models(因此类型是IEnumerable。您报告的错误听起来肯定像是命名空间问题
编辑:我发现有一件事帮助我解决了这些示例中的问题,那就是下载他的源代码,并使用文件比较工具将他的版本与我的版本进行比较。当我遇到一个我无法解决的问题时。我正在阅读Sanderson的书,遇到了同样的问题。解决方法是在菜单继承自导航链接。更正链接或重命名文件,一切正常 有趣的问题引出了一个问题:您如何从错误消息中确定这是一个名称空间问题?
Earl B.我还发现,将类放入一个文件NavController.cs的原始想法也会产生此错误 将类分为3个文件 导航控制器 NavLink.cs CategoryLink.cs 都具有相同的命名空间 命名空间WebUI.Controllers
它应该可以解决这个问题嗨,Mayo,在书的第二版中,Anderson已经将NavLink移动到了模型中,因此我的名称空间是正确的。感谢源代码提示,我不知道可以下载。我将下载并检查差异。谢谢你的帮助。嗨,Earl-我真的不知道b老实说,我更多地假设继承/名称空间存在问题,因为模型中没有可用的IntelliSense。