2014-09-11 58 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(); 
}