1

我有一个功能强大的 ASP.NET MVC 1.0 项目,具有强类型视图。它们在升级到 ASP.NET MVC 2.0 Preview 2 后不再起作用。

Model属性现在是一个Object而不是请求的类型。

我有这个:

<%@ Language="C#" 
    Inherits="System.Web.Mvc.ViewUserControl<IEnumerable<TechHelp.Core.Models.Ticket>>" %>

我明白了

CS1579:foreach 语句无法对“object”类型的变量进行操作,因为“object”不包含“GetEnumerator”的公共定义

编辑有没有人知道为什么这不起作用?

4

2 回答 2

3

我没有听从指示。

http://aspnetmvc.info/wp/2009/10/upgrading-an-asp-net-mvc-1-0-project-to-asp-net-mvc-2/

于 2009-10-12T19:22:50.147 回答
0

我们在 ASp.Net MVC2(发布版本)中有同样的事情。所有强类型视图都认为他们在“对象”类型上工作,无视文件顶部的声明。如果视图是预先编译的,则它们无法编译。如果没有,他们在访问页面时失败。

该项目是VS2010和Asp.Net 2.0,最初是从VS2008和ASP.Net 1.0升级而来的。一个新的 Asp.Net MVC 项目没有同样的问题,但是在将代码复制到一个新的解决方案中时,同样的问题再次浮出水面。

原因是升级过程已将项目的引用从 ASP.Net MVC 1.0 更改为 ASP.Net MVC 2.0,但 web.config 文件仍然引用 ASP.Net MVC 1.0。根据说明更新这些以匹配并添加 bindingRedirect 解决了它。

于 2010-06-30T10:31:36.807 回答