2013-12-11 33 views
0

我创建了一个区域。之后,我创建了控制器,然后创建视图作为列表。但是foreach语句不能识别模型。它是以它为对象,但它应该是一个无法回避的东西?我必须在某个地方配置命名空间吗?asp.net mvc区域名称空间破了什么?

<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Admin.Master" Inherits="System.Web.Mvc.ViewPage<IEnumerable<CentralBanking.Models.Currency>>" %> 

<% foreach (var item in Model) { %> //错误对象不包含geteumerator

铸造模型就能解决问题的方法公开,但它不是我想做的事情。在区域外一切工作正常

回答

1

您可以看到Inherits类型的其他部分是完全限定的。你必须做同样的IEnumerable<>,System.Collections命名空间中属于:

<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Admin.Master" Inherits="System.Web.Mvc.ViewPage<System.Collections.IEnumerable<CentralBanking.Models.Currency>>" %> 
+0

我希望能找到了,如果我错过了一些初始设置配置区域时(如果有的话)?所以没有特别的设置? – maztt

+0

@mazharkaunainbaig:在Web.Config的''部分有一个''标签,它允许你定义自动包含在你的视图中的命名空间,但是我不知道它是否适用于页指令。试试看,让我知道会发生什么。 – StriplingWarrior

+1

谢谢,但问题是版本冲突。我是用vs2010制作的mvc2产品。我将v2.0区域的web.config复制到vs2012中的新区域web.config中。一切工作正常 – maztt

相关问题