2010-06-22 30 views
1

HI通函參考 - LINQ to SQL的

我使用Telerik的MVC電網與阿賈克斯結合

<%Html.Telerik().Grid<UserManagement.Models.setupEmployee>() 
     .Name("setupEmployees") 
      .DataBinding(dataBinding => dataBinding 
       //Ajax binding 
       .Ajax() 
       //The action method which will return JSON 
         .Select("_AjaxBindingEmployee", "UM") 

      ). 
      Columns(colums => 
      { 
       colums.Bound(o => o.EmployeeName).Title("Name"); 
       colums.Bound(o => o.setupDesignation.Title).Title("Designation"); 
       colums.Bound(o => o.Gender); 
       colums.Bound(o => o.DOB); 
       colums.Bound(o => o.EmployeeID).Format( 
       %><%Html.ActionLink("Edit", "Edit", new { Id = "{0}" }).ToString()).Encoded(false); 
      }) 
     .Pageable() 
     .Sortable() 
     .Filterable() 
     .PrefixUrlParameters(false)   
     .Render(); 
    %> 

當我試着使用

return db.setupEmployees 

填充網格我得到以下錯誤

序列化類型的對象時檢測到循環引用。因爲我有這張桌子和其他桌子的關係。 爲了避免這種情況,我可能有兩個選項,我使用viewmodel或禁用不可能的關係。從你身邊

問候

回答

1

在LinqToSql設計器創建的關聯的任何其他sugession是你的控制之下。

您可以刪除它們(不會更改數據庫)。

您可以編輯它們,以便它們生成單面屬性而不是雙面屬性(不會更改數據庫)。

您可以編輯它們,使它們根本不生成任何屬性(不會更改數據庫)。

設計師的文件是一個映射文件,它不會更改數據庫。

+0

感謝您的回覆,是的,它是一個映射文件,並沒有改變數據庫,但我需要在同一時間利用集合。請糾正我,如果我錯了,我想如果我刪除了關聯,如果無法在上述代碼中執行「o => o.setupDesignation.Title」 – Tassadaque 2010-06-23 04:41:15

+0

您可以將它們設置爲只生成父屬性或僅生成兒童財產。這樣他們不是循環的。 – 2010-06-23 10:41:06