2013-07-18 132 views
1

我有3個單選按鈕。我有3個不同的存儲過程,被稱爲3個不同的單選按鈕。例如: 我有一個劍道網格。我希望結果在所有3個單選按鈕選擇的相同網格中顯示。 FindCustomer_Result是我的存儲過程來調用客戶的詳細信息。 現在,如果我選擇第二個單選按鈕,我希望顯示資源存儲過程的詳細信息。 請幫忙。劍道網格與多個數據源

@(Html.Kendo().Grid<proj.Data.FindCustomer_Result>() 
      .Name("CustomerSearch") 
      .Columns(columns => 
      { 
       columns.Bound(p => p.ID).Visible(false); 
       columns.Bound(p => p.FirstName).Width(130); 
       columns.Bound(p => p.LastName).Width(100); 
       columns.Bound(p => p.Address1).Width(150); 
      }) 
      .DataSource(dataSource => dataSource 
       .Ajax() 
      //call getcustomer to fetch details of customer 
     .Read(read => read.Action("GetCustomer", "Customer") 
           .Data("functiontobind")) 
       .ServerOperation(false) 
      ) 
      .Sortable() 
      .Scrollable() 
      .Filterable() 
      .RowAction(row => row.HtmlAttributes.Add("data-id", row.DataItem.ID)) 
      ) 

回答

1

創建一個視圖模型至極包含你的三個單選按鈕:

public class MyViewModel 
{ 
    public int Id {get;set;} 
    public bool Radio1 {get;set;} 
    public bool Radio2 {get;set;} 
    public bool Radio3 {get;set;} 
} 

在你的控制器(客戶),然後填寫視圖模型,並指定動作(GETCUSTOMER)

public class CustomerController : Controller 
{ 
    ....... 
    public ActionResult GetCustomer([DataSourceRequest] DataSourceRequest gridRequest) 
    { 
     IList<MyViewModel> myViewModels = new List<MyViewModel>(); 
     //fill ViewModels here from stored Procedures 
     return Json(myViewModels.ToDataSourceResult(gridRequest)); 
    } 
    ........ 
} 

然後改變你的看法代碼如下:

@(Html.Kendo().Grid<MyViewModel>() 
     .Name("CustomerSearch") 
     .Columns(columns => 
     { 
      columns.Bound(p => p.ID).Visible(false); 
      columns.Bound(p => p.Radio1).Width(130); 
      columns.Bound(p => p.Radio2).Width(100); 
      columns.Bound(p => p.Radio3).Width(150); 
     }) 
     .DataSource(dataSource => dataSource 
      .Ajax() 
     //call getcustomer to fetch details of customer 
    .Read(read => read.Action("GetCustomer", "Customer") 
          .Data("functiontobind")) 
      .ServerOperation(false) 
     ) 
     .Sortable() 
     .Scrollable() 
     .Filterable() 
     .RowAction(row => row.HtmlAttributes.Add("data-id", row.DataItem.ID)) 
     ) 
+0

謝謝你@爲早期的迴應。 我仍然不明白如何可以爲同一個網格調用三個視圖,請詳細說明「」//從存儲過程填充ViewModel「」部分。 – gs11111