2014-09-11 56 views
0

這是我的模型類。在mvc3中添加虛擬場模型

namespace Details.Models 
    { 
     public class COMPLETE_DETAILS 
     { 
      [Key] 
      public long COMPLETE_DETAIL_ID { get; set; } 
      public string TRUCK_NO { get; set; } 
      public string CHALLAN_NO { get; set; } 
      public string L_R_NO { get; set; } 
      public string DEALER_NAME { get; set; } 
      public string SOURCE_DESTINATION { get; set; } 
      public string ORIGINAL_DESTINATION { get; set; } 
      public string COMPANY_DESTINATION { get; set; } 
      public decimal? CEMENT_BAG_NO { get; set; } 
      public decimal? RATE_PER_BAG { get; set; } 
      public decimal? TOTAL_COST_PERSONAL { get; set; } 
      public decimal? TOTAL_COST_COMPANY { get; set; } 
      public decimal? NET_PROFIT { get; set; } 
      public Nullable<DateTime> DATE { get; set; } 
      public decimal? OTHER_EXPENSES { get; set; } 
      **public virtual long? ROW_NO { get; set; }** 
     } 
    } 

我想添加一個虛擬字段到我的模型類,但它不適合我。在我的數據庫中,表名是COMPLETE_DETAILS,它具有除ROW_NO以外的所有字段,因此在模型類中創建虛擬字段的任何其他選項均爲mvc3

回答

0

我假定您正在使用例如Entity Framework進行鏈接用c#類來舉例說明你的MS-SQL數據庫。所以,你可以在C#類中列出所有需要的屬性,然後用一個額外的字段ROW_NO創建從COMPLETE_DETAILS繼承的新類並計算它的程序性質或任何你想要的。

public class COMPLETE_DETAILS_CUSTOM: COMPLETE_DETAILS 
{ 
    public virtual long? ROW_NO { get; set; }  
} 

一些LINQ代碼:

using(DbContext Db = new DbContext())  
{ 
    List<COMPLETE_DETAILS_CUSTOM> items = Db.COMPLETE_DETAILS_DBSET.Select((item, index)=> new COMPLETE_DETAILS_CUSTOM(){ 
     COMPLETE_DETAIL_ID = item.COMPLETE_DETAIL_ID, 
     // same with other fields 
     ROW_NO = index 
    }).ToList(); 
}