我这样做:Html.RenderParial,如何传递和使用模型?
<% Html.RenderPartial("SomePartial", Model); %>
我的模型有一个属性的用户ID
在我的部分我试试这个:
<%= Model.UserID%>
,但我得到此错误:
CS1061:'object'不包含'UserID'的定义,也没有扩展方法'UserID'接受a类型“对象”的第一个参数可以找到(是否缺少using指令或程序集引用?)
我这样做:Html.RenderParial,如何传递和使用模型?
<% Html.RenderPartial("SomePartial", Model); %>
我的模型有一个属性的用户ID
在我的部分我试试这个:
<%= Model.UserID%>
,但我得到此错误:
CS1061:'object'不包含'UserID'的定义,也没有扩展方法'UserID'接受a类型“对象”的第一个参数可以找到(是否缺少using指令或程序集引用?)
Blankman,
确保您的局部ASCX文件模型定义为每个主视图,即:
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<Your.Model>" %>
[编辑] - 如Stefanvds以下提到,如果你只需要从模型中的ID部分,然后定义你的部分为:
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<int>" %>
这将是最终我想:)
欢呼
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<DB.Models.TheModelYouWantToSend>" %>
您应该部分与此启动。
另外,如果你想发送整个模型,你不需要指定它。
<% Html.RenderPartial("SomePartial"); %>
或者您是否只想发送ID。
<% Html.RenderPartial("SomePartial", Model.UserID); %>
这将使头
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<int>" %>
模型类型上的局部视图,你在传递给Html.RenderPartial方法模型应该匹配。
确保在您的局部视图的顶部你有你的Control
标记设置为模型的类型Inherits
属性你正在传递:
Inherits="System.Web.Mvc.ViewUserControl<MyNamespace.MyStronglyTypedModel>"