主人/细节asp.net mvc4 Telerik [英] Master/Detail asp.net mvc4 Telerik

查看:66
本文介绍了主人/细节asp.net mvc4 Telerik的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试创建主详细信息页面但数据未显示在网格中





这是我的观点:



I''m trying to create a master detail page but the data not displayed in the grid


this is my View:

<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<IEnumerable<MvcApplication43.Models.MasterDetailViewModel>>" %>

<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
    test5

     <script type="text/javascript">

         function expandFirstRow(grid, row) {
             if (grid.$rows().index(row) == 0) {

                 grid.expandRow(row);
             }
         }

         function employees_onRowDataBound(e) {
             var grid = $(this).data('tGrid');
             expandFirstRow(grid, e.row);
         }

         function orders_onRowDataBound(e) {
             var grid = $(this).data('tGrid');
             expandFirstRow(grid, e.row);
         }
    </script>
</asp:Content>



<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">

<h2>test5</h2>

<%= Html.Telerik().Grid(Model)
        .Name("Employees")
        .Columns(columns =>
        {
            columns.Bound(e => e.Lot_Number).Width(140);
            columns.Bound(e => e.Item_Number).Width(140);
            columns.Bound(e => e.QC_Approval).Width(140);
            columns.Bound(e => e.QCDateApproval).Width(140);
            columns.Bound(e => e.QCUser).Width(140);
            columns.Bound(e => e.QA_Release).Width(140);
            columns.Bound(e => e.QADateRelease).Width(140);
            columns.Bound(e => e.QAUser).Width(140);

        })
        .ClientEvents(events => events.OnRowDataBound("employees_onRowDataBound"))
        .DetailView(details => details.ClientTemplate(
                Html.Telerik().Grid(Model)
                        .Name("Orders_<#= Lot_Number #>")
                    .Columns(columns =>
                    {
                         columns.Bound(o => o.ResultDefinition_ID).Visible(false).Width(101);
                        columns.Bound(o => o.ResultDefinition_Nr).Width(101);
                        columns.Bound(o => o.ResultName).Width(101);
                        columns.Bound(o => o.LIMSName).Width(101);
                        columns.Bound(o => o.Unit).Width(101);
                        columns.Bound(o => o.LowLimit).Width(101);
                         columns.Bound(o => o.HighLimit).Width(101);

                    })

                    .ClientEvents(events => events.OnRowDataBound("orders_onRowDataBound"))
                    .DetailView(ordersDetailView => ordersDetailView.ClientTemplate(

                        Html.Telerik().Grid(Model)
                            .Name("OrderDetails_<#= ResultDefinition_ID #>")
                            .Columns(columns =>
                            {

                                columns.Bound(od => od.Result_Num).Width(200);
                                columns.Bound(od => od.Result_Text).Width(200);

                            })
                            .DataBinding(dataBinding => dataBinding.Ajax()
                                 .Select("_OrderDetailsForOrderHierarchyAjax", "Home", new {
                                     ResultDefinition_ID = "<#= ResultDefinition_ID #>" }))
                            .Pageable()
                            .Sortable()
                            .ToHtmlString()
                     ))
                    .DataBinding(dataBinding => dataBinding.Ajax()
                        .Select("_OrdersForEmployeeHierarchyAjax", "Home", new { Lot_Number =
                            "<#= Lot_Number #>" }))
                    .Pageable()
                    .Sortable()
                    .Filterable()
                    .ToHtmlString()
        ))
        .DataBinding(dataBinding => dataBinding.Ajax().Select("_EmployeesHierarchyAjax", "Home"))
        .Pageable(paging => paging.PageSize(5))
        .Scrollable(scrolling => scrolling.Height(580))
        .Sortable()
    %>



</asp:Content>





这是我的控制器:









and this is my controler:



public ActionResult test5()
        {
            return View();
        }
        [AcceptVerbs(HttpVerbs.Post)]
        [GridAction]
        public ActionResult _EmployeesHierarchyAjax()
        {
          var ListMatiere=(from u in new DB_26XEntities().Tbl_Raw_Material_Batch
                                                    orderby u.Lot_Number
                                                    select new MasterDetailViewModel

                            {
                                
                                Lot_Number=u.Lot_Number,
                                RawMaterialBatch_ID=u.RawMaterialBatch_ID,
                                Item_Number=u.Item_Number,
                                QC_Approval=(bool)u.QC_Approval,
                                QCDateApproval=u.QCDateApproval,
                                QCUser=u.QCUser,
                                QA_Release=(bool)u.QA_Release,
                                QADateRelease=u.QADateRelease,
                                QAUser=u.QAUser
                               
                            });
            
            return View(new GridModel(ListMatiere));
        }
        [AcceptVerbs(HttpVerbs.Post)]
        [GridAction]
        public ActionResult _OrdersForEmployeeHierarchyAjax(int RawMaterialResult_Id)
        {
            var MatResult = (from o in new DB_26XEntities().Tbl_Raw_Material_Result
                             where o.RawMaterialResult_Id == RawMaterialResult_Id
                             select new MasterDetailViewModel
                            {
                    RawMaterialResult_Id=o.RawMaterialResult_Id,
                    Lot_Number=o.Lot_Number,
       
                    ResultDefinition_Nr=o.ResultDefinition_Nr,
                    Result_Num=(float)o.Result_Num,
        
                    Result_Text=o.Result_Text
         

                            });
            return View(new GridModel(MatResult));
        }
        [AcceptVerbs(HttpVerbs.Post)]
        [GridAction]
        public ActionResult _OrderDetailsForOrderHierarchyAjax(int ResultDefinition_Nr)
        {
            var ResultDef =( from o in new DB_26XEntities().Tbl_ResultDefinition
                         where o.ResultDefinition_Nr == ResultDefinition_Nr
                             select new MasterDetailViewModel
                         {
                             ResultDefinition_ID=o.ResultDefinition_ID,
                             ResultDefinition_Nr=o.ResultDefinition_Nr,
                             ResultName=o.ResultName,
                             LIMSName=o.LIMSName,
                             Unit=o.Unit,
                             LowLimit=(float)o.LowLimit,
                             HighLimit=(float)o.HighLimit
                         });
            return View(new GridModel(ResultDef));
        }







i需要帮助PLZ :(




i need help PLZ :(

推荐答案

rows()。index(row)== 0 ){

grid.expandRow(row);
}
}

function employees_onRowDataBound(e){
var grid =
rows().index(row) == 0) { grid.expandRow(row); } } function employees_onRowDataBound(e) { var grid =


this )。data( ' tGrid');
expandFirstRow(grid,e.row);
}

function orders_onRowDataBound(e){
var grid =
(this).data('tGrid'); expandFirstRow(grid, e.row); } function orders_onRowDataBound(e) { var grid =


this )。data(' tGrid');
expandFirstRow(grid,e.row);
}
< / 脚本 >
< / asp:内容 >



< asp:内容 ID = Content2 < span class =code-attribute> ContentPlaceHolderID = MainContent runat = 服务器 >

< h2 > test5 < < span class =code-leadattribute> / h2 >

< ;% = Html.Telerik()。网格(模型)
.Name( 员工
.Columns(columns = >
{
columns.Bound(e = > e.Lot_Number)。宽度( 140 );
columns.Bound(e = > e.Item_Number).Width( 140 );
columns.Bound(e = > e.QC_Approval).Width( 140 );
columns.Bound(e = > e.QCDateApproval).Width( 140 );
columns.Bound(e = > e.QCUser).Width( 140 );
columns.Bound(e = > e.QA_Release).Width( 140 );
columns.Bound(e = > e.QADateRelease).Width( 140 );
columns.Bound(e = > e.QAUser).Width( 140 );

})
.ClientEvents(events = > events.OnRowDataBound( employees_onRowDataBound))
。详细信息(详情= > details.ClientTemplate (
Html.Telerik()。网格(模型)
.Name( Orders_<# = Lot_Number#>
.Columns(columns = >
{
columns.Bound(o = > o.ResultDefinition_ID).Visible( false )。宽度( 101 );
columns.Bound(o = > o.ResultDefinition_Nr).Width( 101 );
columns.Bound(o = > o.ResultName).Width( 101 );
columns.Bound(o = > o.LIMSName).Width( 101 );
columns.Bound(o = > o.Unit).Width( 101 );
columns.Bound(o = > o.LowLimit).Width( 101 );
columns.Bound(o = > o.HighLimit).Width( 101 );

})

.ClientEvents(events = > events.OnRowDataBound( orders_onRowDataBound))
.DetailView(ordersDetailView = > ordersDetailView.ClientTemplate(

Html.Telerik()。网格(模型)
.Name( OrderDetails_<#= ResultDefinition_ID#>
.Columns(columns = >
{

columns.Bound(od = > od.Result_Num).Width( 200 );
columns.Bound(od = > od.Result_Text).Width( 200 );

})
.DataBinding(dataBinding = > dataBinding.Ajax()
.Select( _ OrderDetailsForOrderHierarchyAjax Home new {
ResultDefinition_ID = <#= ResultDefinition_ID#>}))
.Pageable()
.Sortable()
.ToHtmlString()
))
.DataBinding(dataBinding = > dataBinding.Ajax()
.Select( _ OrdersForEmployeeHierarchyAjax Home new {Lot_Number =
<#= Lot_Number#>}))
.Pageable()
.Sortable()
.Filterable()
.ToHtmlString()
))
.DataBinding(dataBinding = > dataBinding.Ajax()。选择( _ EmployeesHierarchyAjax Home))
.Pageable(paging = > paging.PageSize( 5 ))
.Scrollable(scrolling = > ; scrolling.Height( 580 ))
.Sortable()
%>



< / asp:内容 >
(this).data('tGrid'); expandFirstRow(grid, e.row); } </script> </asp:Content> <asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server"> <h2>test5</h2> <%= Html.Telerik().Grid(Model) .Name("Employees") .Columns(columns => { columns.Bound(e => e.Lot_Number).Width(140); columns.Bound(e => e.Item_Number).Width(140); columns.Bound(e => e.QC_Approval).Width(140); columns.Bound(e => e.QCDateApproval).Width(140); columns.Bound(e => e.QCUser).Width(140); columns.Bound(e => e.QA_Release).Width(140); columns.Bound(e => e.QADateRelease).Width(140); columns.Bound(e => e.QAUser).Width(140); }) .ClientEvents(events => events.OnRowDataBound("employees_onRowDataBound")) .DetailView(details => details.ClientTemplate( Html.Telerik().Grid(Model) .Name("Orders_<#= Lot_Number #>") .Columns(columns => { columns.Bound(o => o.ResultDefinition_ID).Visible(false).Width(101); columns.Bound(o => o.ResultDefinition_Nr).Width(101); columns.Bound(o => o.ResultName).Width(101); columns.Bound(o => o.LIMSName).Width(101); columns.Bound(o => o.Unit).Width(101); columns.Bound(o => o.LowLimit).Width(101); columns.Bound(o => o.HighLimit).Width(101); }) .ClientEvents(events => events.OnRowDataBound("orders_onRowDataBound")) .DetailView(ordersDetailView => ordersDetailView.ClientTemplate( Html.Telerik().Grid(Model) .Name("OrderDetails_<#= ResultDefinition_ID #>") .Columns(columns => { columns.Bound(od => od.Result_Num).Width(200); columns.Bound(od => od.Result_Text).Width(200); }) .DataBinding(dataBinding => dataBinding.Ajax() .Select("_OrderDetailsForOrderHierarchyAjax", "Home", new { ResultDefinition_ID = "<#= ResultDefinition_ID #>" })) .Pageable() .Sortable() .ToHtmlString() )) .DataBinding(dataBinding => dataBinding.Ajax() .Select("_OrdersForEmployeeHierarchyAjax", "Home", new { Lot_Number = "<#= Lot_Number #>" })) .Pageable() .Sortable() .Filterable() .ToHtmlString() )) .DataBinding(dataBinding => dataBinding.Ajax().Select("_EmployeesHierarchyAjax", "Home")) .Pageable(paging => paging.PageSize(5)) .Scrollable(scrolling => scrolling.Height(580)) .Sortable() %> </asp:Content>





这是我的控制器:









and this is my controler:



public ActionResult test5()
        {
            return View();
        }
        [AcceptVerbs(HttpVerbs.Post)]
        [GridAction]
        public ActionResult _EmployeesHierarchyAjax()
        {
          var ListMatiere=(from u in new DB_26XEntities().Tbl_Raw_Material_Batch
                                                    orderby u.Lot_Number
                                                    select new MasterDetailViewModel

                            {
                                
                                Lot_Number=u.Lot_Number,
                                RawMaterialBatch_ID=u.RawMaterialBatch_ID,
                                Item_Number=u.Item_Number,
                                QC_Approval=(bool)u.QC_Approval,
                                QCDateApproval=u.QCDateApproval,
                                QCUser=u.QCUser,
                                QA_Release=(bool)u.QA_Release,
                                QADateRelease=u.QADateRelease,
                                QAUser=u.QAUser
                               
                            });
            
            return View(new GridModel(ListMatiere));
        }
        [AcceptVerbs(HttpVerbs.Post)]
        [GridAction]
        public ActionResult _OrdersForEmployeeHierarchyAjax(int RawMaterialResult_Id)
        {
            var MatResult = (from o in new DB_26XEntities().Tbl_Raw_Material_Result
                             where o.RawMaterialResult_Id == RawMaterialResult_Id
                             select new MasterDetailViewModel
                            {
                    RawMaterialResult_Id=o.RawMaterialResult_Id,
                    Lot_Number=o.Lot_Number,
       
                    ResultDefinition_Nr=o.ResultDefinition_Nr,
                    Result_Num=(float)o.Result_Num,
        
                    Result_Text=o.Result_Text
         

                            });
            return View(new GridModel(MatResult));
        }
        [AcceptVerbs(HttpVerbs.Post)]
        [GridAction]
        public ActionResult _OrderDetailsForOrderHierarchyAjax(int ResultDefinition_Nr)
        {
            var ResultDef =( from o in new DB_26XEntities().Tbl_ResultDefinition
                         where o.ResultDefinition_Nr == ResultDefinition_Nr
                             select new MasterDetailViewModel
                         {
                             ResultDefinition_ID=o.ResultDefinition_ID,
                             ResultDefinition_Nr=o.ResultDefinition_Nr,
                             ResultName=o.ResultName,
                             LIMSName=o.LIMSName,
                             Unit=o.Unit,
                             LowLimit=(float)o.LowLimit,
                             HighLimit=(float)o.HighLimit
                         });
            return View(new GridModel(ResultDef));
        }







i需要帮助PLZ :(




i need help PLZ :(


这篇关于主人/细节asp.net mvc4 Telerik的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆