2

我正在尝试将重复的代码提取到 Html.Helpers 类中。我可以使用带有简单 html 的帮助程序类,但是当我尝试使用 Kendo UI 扩展时,我得到了错误。说:

CS1928:“System.Web.WebPages.Html.HtmlHelper”不包含“Kendo”的定义,并且最佳扩展方法重载“Kendo.Mvc.UI.HtmlHelperExtension.Kendo(System.Web.Mvc.HtmlHelper)”有一些无效参数

感谢您提供任何帮助或解决方法以使其正常工作。由于标准合规性,如果可能,我想将文件保留在 app_code 文件夹中。

.cshtml 文件中的代码

@using Kendo.Mvc.UI

@helper LEASearch(string name)
{
    @(Html.Kendo().AutoComplete()
        .Name(name)
        .Filter("contains")
        .Placeholder("Entity ID, CTDS or Name")
        .MinLength(2)
        .HtmlAttributes(new { style = "width:390px" })
        .DataSource(source => source.Read(read => read.Action("SearchLEAList", "DataPush")
                                                    .Data("onLEASearchIncluded"))
                                    .ServerFiltering(true)).Events(events=> events.Select("selectLEAIncluded"))
        .Template("<h5 data_entity=\"${data.EntityID}\""+
                " data_ctds=\"${data.CTDS}\" data_name=\"${data.Name}\">"+
                "ID:${data.EntityID} &nbsp;&nbsp; CTDS:${data.CTDS}</h5>"+
                "<p>${data.Name}</p>")
        );
}

Web.config system.web 命名空间

    <pages>
  <namespaces>
    <add namespace="System.Web.Helpers" />
    <add namespace="System.Web.Mvc" />
    <add namespace="System.Web.Mvc.Ajax" />
    <add namespace="System.Web.Mvc.Html" />
    <add namespace="System.Web.Optimization" />
    <add namespace="System.Web.Routing" />
    <add namespace="System.Web.WebPages" />
    <add namespace="Kendo.Mvc.UI"/>
  </namespaces>
</pages>

查看/Web.config Razor 部分

  <system.web.webPages.razor>
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<pages pageBaseType="System.Web.Mvc.WebViewPage">
  <namespaces>
    <add namespace="System.Web.Mvc" />
    <add namespace="System.Web.Mvc.Ajax" />
    <add namespace="System.Web.Mvc.Html" />
    <add namespace="System.Web.Optimization"/>
    <add namespace="System.Web.Routing" />
  </namespaces>
</pages>

4

1 回答 1

2

看起来好像不支持访问 HtmlHelper 扩展方法。这是我在 ASP.NET 论坛中找到的内容:http ://forums.asp.net/t/1799665.aspx

于 2013-10-02T10:59:23.540 回答