我的ORM有一个库,我正在使用MVC应用程序。我有一个问题,页面将无法编译,因为视图无法看到模型的属性(从较低级别的基类继承)。他们系统抛出一个编译错误,说
'object'不包含'ID'的定义,也没有扩展方法'ID' 接受第一个类型为'object'的参数可以找到(你是否错过了使用 指令或程序集引用?)
暗示View没有看到模型。在Controller中,我可以完全访问Model,并检查视图中的Inherits部分,以验证是否传递了正确的类型。
控制器:
return View(new TeraViral_Blog());
查看:
<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<com.models.TeraViral_Blog>" %>
<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
Index2
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
<h2>Index2</h2>
<fieldset>
<legend>Fields</legend>
<p>
ID:
<%= Html.Encode(Model.ID) %>
</p>
</fieldset>
</asp:Content>
答案 0 :(得分:1)
查看Views文件夹的web.config查找“namespaces”节点并在那里添加Model的命名空间:
<namespaces>
<add namespace="com.models"/>
</namespaces>