首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在ascx文件中使用Html.RenderPartial()

在ascx文件中使用Html.RenderPartial()
EN

Stack Overflow用户
提问于 2010-09-29 14:25:48
回答 3查看 54.5K关注 0票数 24

我试图在acsx文件中使用Html.RenderPartial,并得到了一个错误:

编译器错误消息: CS1973:'System.Web.Mvc.HtmlHelper‘没有名为'RenderPartial’的适用方法,但似乎有一个名为“RenderPartial”的扩展方法。不能动态地分派扩展方法。考虑转换动态参数,或者不使用扩展方法语法调用扩展方法。

代码语言:javascript
复制
<a href="/projects/<%=project.Id %>">
  <% Html.Label("fdf"); %>
  <% Html.RenderPartial("ProjectName", Model.Id); %></a></li>
 <%} %>

但是,我已经导入了必要的名称空间,所以不会出现错误

代码语言:javascript
复制
<% Html.Label("fdf"); %>

在ascx文件中是否有使用Html.RenderPartial的方法?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-09-29 14:29:19

编译器无法选择正确的方法,因为您的模型是dynamic。将呼叫更改为:

代码语言:javascript
复制
<% Html.RenderPartial("ProjectName", (int)(Model.Id)); %>

或者任何其他数据类型Id都是。

票数 41
EN

Stack Overflow用户

发布于 2012-06-05 10:55:29

万一其他人犯了我同样的错误:

代码语言:javascript
复制
@Model MyViewModel

这将将您的模型视为动态的。

代码语言:javascript
复制
@model MyViewModel

这是一个正确的强类型视图。请注意资本化的不足!

请注意,这是Razor,不像最初的问题。

票数 8
EN

Stack Overflow用户

发布于 2011-11-29 12:37:33

我发现唯一能通过的方法。一个IEnumerable是创建一个局部变量并传入这个变量。例如,@{ IEnumerable<Demo.Models.Friend> friends = Model.Friends; Html.RenderPartial("_FriendsList", friends); }

Html.RenderPartial("_FriendsList", (IEnumerable<Demo.Models.Friends>)(Model.Friends));没有工作!

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3822546

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档