htmlhelper 不包含 ASP.NET MVC RAZOR 中的剑道定义
Posted
技术标签:
【中文标题】htmlhelper 不包含 ASP.NET MVC RAZOR 中的剑道定义【英文标题】:htmlhelper does not contain a definition for kendo in ASP.NET MVC RAZOR 【发布时间】:2016-10-03 08:52:31 【问题描述】:我正在尝试为 ASP.NET MVC 应用程序安装 kendo UI,但出现以下错误。 htmlhelper 不包含剑道的定义
我有使用 kendo ui 的 ASP.NET 项目,我已经在 require 文件夹中复制了 require kendo 样式和脚本,在 web.config 中添加了命名空间详细信息,在 bundleConfig.cs 和 kendo.mvc dll 中添加了引用。我已经按照以下教程进行操作
http://docs.telerik.com/kendo-ui/aspnet-mvc/asp-net-mvc-5
我不是我想念的,两个应用程序都是 ASP.NET MVC 5。
测试代码如下,我试图让它工作
@(Html.Kendo().DatePicker().Name("datepicker"))
【问题讨论】:
【参考方案1】:让 ASP.NET MVC 知道服务器端包装器所在的 Kendo.Mvc.UI 命名空间。为此,请更新 Web 应用程序的 web.config 文件。
第 1 步打开 Views/Web.config,如果使用 ASPX,则打开根 Web.config。
第 2 步找到命名空间标签。
步骤 3 将添加标签附加到命名空间标签。
示例
<namespaces>
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Routing" />
<add namespace="Kendo.Mvc.UI" />
</namespaces>
第 4 步将绑定重定向添加到您当前的 System.Web.Mvc 版本。
示例
<dependentAssembly>
<assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="0.0.0.0-[version-of-kendo-dll-that-you-are-using]" newVersion="[version-of-kendo-dll-that-you-are-using]" />
</dependentAssembly>
【讨论】:
我已经完成了所有这些步骤,但仍然无法正常工作 尝试在 Views 文件夹内的 _ViewStart.cshtml 文件中添加@using Kendo.Mvc.UI
还要检查命名空间是否添加到 Views 文件夹内的 web.config 中,而不是根文件夹的 web.config 中
我已经使用 Kendo.Mvc.Extensions 添加了控制器类;使用 Kendo.Mvc.UI;并且正在识别,但由于某些原因它仍然无法在剃刀视图页面中工作
您是否尝试过在_ViewStart.cshtml文件中添加检查?以上是关于htmlhelper 不包含 ASP.NET MVC RAZOR 中的剑道定义的主要内容,如果未能解决你的问题,请参考以下文章
ASP.NET MVC HtmlHelper之Html.ActionLink
如何禁用 ASP.NET MVC 中 HtmlHelper 方法生成的单选按钮和复选框?
在 ASP.NET MVC 3 中添加您自己的 HtmlHelper
在 ASP.net core mvc 3.1 中的 HtmlHelper 扩展方法中使用 DataAnnotation 本地化器