Asp.net mvc 3 ASP.NET MVC错误:以下方法或属性之间的调用不明确

Asp.net mvc 3 ASP.NET MVC错误:以下方法或属性之间的调用不明确,asp.net-mvc-3,shopping-cart,hidden,ambiguity,ambiguous-call,Asp.net Mvc 3,Shopping Cart,Hidden,Ambiguity,Ambiguous Call,我有个问题。 在我的产品视图中,我有一个按钮可将其添加到购物车,如下所示: <div> <% using(Html.BeginForm("AddToCart", "Cart")) {%> <%: Html.HiddenFor(x => x.id_produktu) %> <%: Html.Hidden("returnUrl", Request.Url.PathAndQuery) %> <input type="s

我有个问题。 在我的产品视图中,我有一个按钮可将其添加到购物车,如下所示:

<div>
<% using(Html.BeginForm("AddToCart", "Cart")) {%>
    <%: Html.HiddenFor(x => x.id_produktu) %>
    <%: Html.Hidden("returnUrl", Request.Url.PathAndQuery) %>
    <input type="submit" value="Dodaj do koszyka" />
    <% } %>
    <h4><%: Model.cena_produktu.ToString("c")%></h4>

x、 id_produktu)%>

对于这一行:

<%: Html.Hidden("returnUrl", Request.Url.PathAndQuery) %>

我得到一个错误:

以下方法或属性之间的调用不明确:“System.Web.Mvc.TextInputExtensions.Hidden(System.Web.Mvc.HtmlHelper,string,object)”和“System.Web.Mvc.Html.InputExtensions.Hidden(System.Web.Mvc.HtmlHelper,string,object)”

如何解决这个问题?提前感谢您。

三种方式:

  • 完全限定该方法:

    System.Web.Mvc.Html.Hidden(Html, "returnUrl", Request.Url.PathAndQuery)
    
  • 使用不同的名称创建自己的静态方法,使名称变得模糊

    public static string TheHiddenIWant(this HtmlHelper helper, string name, object value)
    {
        return System.Web.Mvc.Html.Hidden(helper, name, value);
    }
    Html.TheHiddenIWant("returnUrl", Request.Url.PathAndQuery);
    
  • 不要为不需要的扩展方法包含引用或using语句。对于 例如,使用System.Web.Mvc.TextInputExtensions摆脱
    ,或者只是摆脱引用

  • 三种方式:

  • 完全限定该方法:

    System.Web.Mvc.Html.Hidden(Html, "returnUrl", Request.Url.PathAndQuery)
    
  • 使用不同的名称创建自己的静态方法,使名称变得模糊

    public static string TheHiddenIWant(this HtmlHelper helper, string name, object value)
    {
        return System.Web.Mvc.Html.Hidden(helper, name, value);
    }
    Html.TheHiddenIWant("returnUrl", Request.Url.PathAndQuery);
    
  • 不要为不需要的扩展方法包含引用或using语句。对于 例如,使用System.Web.Mvc.TextInputExtensions摆脱
    ,或者只是摆脱引用

  • 第一种方式(稍有改动:
    )很有帮助,谢谢!)第一种方式(稍有改动:
    )很有帮助,谢谢!)