【问题标题】:How do I add a Telerik grid to a page coded with Razor in a MVC project?如何在 MVC 项目中将 Telerik 网格添加到使用 Razor 编码的页面?
【发布时间】:2015-06-16 08:58:27
【问题描述】:

我在 asp.net 项目中使用过 Telerik RadGrid,但我无法让它在 MVC/Razor 中工作。通过一些试验和错误,我设法获得了部分网格显示,但它没有数据。我通常会在 C# 代码中绑定服务器端的网格,但由于 MVC/Razor 后面没有代码,我不知道该怎么做。如何让它显示来自我的模型的数据?

我是按照这里的说明开始的: http://www.telerik.com/help/aspnet-mvc/using-with-the-razor-view-engine.html

    @Html.Telerik().Grid(Model)
    .Name("Grid")
    .Columns(columns =>
    {
        columns.Bound(o => o.Id).Width(100);
        columns.Bound(o => o.ApplicantFirstName).Width(200);
        })
        .Render();
    }

但是,我收到了错误

'Telerik.Web.Mvc.UI.ViewComponentFactory.Grid(System.Data.DataView)' 的最佳重载方法匹配有一些无效参数 c:\inetpub\wwwroot\CarmelFinancialWeb\Views\CreateContract\CreateContract.cshtml 644 14 卡梅尔金融网

然后我找到了这个页面: http://markfreedman.com/index.php/2011/08/09/wrestling-with-the-telerik-mvc-grid-control-part-1/

使用那里的代码,我发现我需要使用模型的全名:

    @{Html.Telerik().Grid<CarmelFinancialWeb.Models.ModelApplication>()
    .Name("Grid")
    .Columns(columns =>
    {
        columns.Bound(o => o.Id).Width(100);
        columns.Bound(o => o.ApplicantFirstName).Width(200);
        })
        .Render();
    }

已编译,但我没有获取数据。我得到了两个标题,没有网格线,还有一条消息说没有结果。

Id 申请人名字

没有要显示的记录

我尝试过的其他一些网站提供了一些示例,但它们都没有帮助我显示结果: Problem rendering Telerik MVC Grid in a Razor view Problems with rendering a templated asp.net mvc telerik grid

我还缺少什么?如何获取网格中的数据?

【问题讨论】:

    标签: asp.net-mvc razor telerik telerik-grid telerik-mvc


    【解决方案1】:

    您必须将您的模型(数据源)绑定到网格才能显示其数据:

    @{Html.Telerik().Grid<CarmelFinancialWeb.Models.ModelApplication>(Model)
        .Name("Grid")
        .Columns(columns =>
        {
            columns.Bound(o => o.Id).Width(100);
            columns.Bound(o => o.ApplicantFirstName).Width(200);
            })
            .Render();
        }
    

    假设你的模型是IEnumerable&lt;CarmelFinancialWeb.Models.ModelApplication&gt;

    【讨论】:

    • 谢谢@fmgp。当我这样做时,我又回到了这个错误:'Telerik.Web.Mvc.UI.ViewComponentFactory.Grid(string)' 的最佳重载方法匹配有一些无效参数
    • 刚刚看到您对 Ienumerable 的编辑。我试图将模型转换为 Ienumerable,但所有 Razor 代码 (@Htlm....) 都坏了。如何在不破坏其余代码的情况下使其 Ienumerable?假设无法完成,我如何使用我的模型绑定网格?
    • 模型的类型是什么?
    • 原谅我,我是 MVC 新手。我没有意识到模型有类型。模型在 Model.Application.cs 中声明如下: public class ModelApplication { public int Id { get;放; } 公共字符串 DealerID { 获取;放; }.....
    • 在 Razor 页面 (.cshtml) 的顶部,您是如何定义 @model 的?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-01-19
    • 2023-03-14
    • 1970-01-01
    • 1970-01-01
    • 2014-10-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多