如何在Razor上使用Kendo UI?

Laj*_*pad 2 linq asp.net asp.net-mvc razor kendo-ui

我已经下载并使用了Kendo UI和Kendo UI网格,但我的源代码非常复杂,原因如下:

  1. 我已经破解了排序以启用不区分大小写的排序.

  2. 我在过滤器菜单中显示过滤器菜单,页面大小选择器,过滤器功能菜单和DatePicker时观察到UI错误; 我用丑陋的黑客解决了这些问题.

  3. 在客户端,我在需要时使用参数化帖子刷新了网格.

  4. 在服务器端,我创建了一个动态处理网格的排序,过滤器,页面大小和分页状态的函数.

但是,我的客户告诉我,我们需要一个"简单"的解决方案,网格页面应该在一小时内完成.我认为这对我当前的方法是不现实的,除非我实现一个通用类来处理网格.使用Linq可以处理表,字段,过滤器,排序,分页和页面大小.我肯定知道这一点,因为我的代码远不是服务器端的通用网格支持者和客户端的Kendo UI网格工厂.但是,我的客户明确表示我们不需要实现这个类和原型,因为我们应该能够简单地配置Kendo UI.他告诉我(之前未详细说明的细节)我们被允许从表中返回所有行并在客户端过滤/排序,因此第3和第4点将变得不必要.

我一直在寻找的例子在这里.我想在cshtml中有类似的例子.但是,在我下载的Telerik Kendo UI中,我没有任何服务器端内容,因此IDE显示Html.Kendo().Grid(Model)不正确.错误如下:

错误10'System.Web.Mvc.HtmlHelper'不包含'Kendo'的定义,并且没有扩展方法'Kendo'接受类型'System.Web.Mvc.HtmlHelper'的第一个参数可以找到(你错过了吗?使用指令或程序集引用?)

我正在使用ASP.NET MVC3和Linq.

如何在链接中的cshtml文件中描述的样式中使用带有ASP.NET Razor的Telerik Kendo UI?这是免费的吗?如果不是,费用是多少?我应该安装KendoUI.Mvc.VSPackage.vsix吗?

Nik*_*vić 7

要使用其他帮助程序,您需要使用Razor视图引擎注册它们.这是在web.config文件中完成的,或者使用@using.cshtml文件顶部的语句.

这是我的一个例子 web.config

  <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" />
        <add namespace="Kendo.Mvc.UI"/>
      </namespaces>
    </pages>
  </system.web.webPages.razor>
Run Code Online (Sandbox Code Playgroud)

就许可而言,这不是一个免费软件.您可以在其网站上查看许可条款和价格.根据他们的许可证,使用Telerik控件的每个开发人员都需要拥有许可证.许可证不是公司范围的,也不是项目范围的.

您不需要安装vsix,但它可以通过自动添加对所需程序集的引用以及向web.config文件添加所需条目来简化您的生活.