Я начал этот проект с использованием MVC2, но был изменен на dll MVC3.Объект просмотра MVC3 ASPX не содержит определения
У меня есть объект Asset. В контроллере у меня есть детали ActionResult определяется следующим образом:
EDIT: (Put правильного кода контроллера.)
public ActionResult Details(int id)
{
using (var db = new AssetsContainer())
{
return View(db.Assets.Find(id));
}
}
Моей Details.aspx страница определяется следующим образом:
<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<CITracker.Models.Asset>" %>
<%@ Import Namespace="CITracker.Models" %>
<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
Details
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
<h2>Details</h2>
<fieldset>
<legend>Fields</legend>
<div class="display-label">Id</div>
<div class="display-field"><%: Model.Id %></div>
Я получаю эту ошибку:
CS1061: 'object' does not contain a definition for 'Id' and no extension method 'Id' accepting a first argument of type 'object' could be found (are you missing a using directive or an assembly reference?)
Любой идеи, почему это работает с MVC2, но не с MVC3? Я не получаю ошибки времени разработки, но я получаю ошибки времени выполнения.
Похоже, вы отправляете 'IEnumerable' и ожидаете увидеть, чтобы получить' Assest' –
gdoron
Проверьте правильность написания и убедитесь, что ваша модель действительно содержит свойство Id. –
Да, объект Asset содержит Id. –