2012-07-28 23 views
2

我是新來的EF,我只是在試驗。有人可以告訴我,以下是否可能。給定一個(產品)表在數據庫中,像這樣:如何在POCO類中包含未映射的字段

Id Cost DescriptionFK 
-- ---- ------------- 
? ? ? 

我想對應的POCO類(實體)出現,如:

public class Product 
{ 
    public int Id { get; set; } 
    public decimal Cost { get; set; } 
    public string Description { get; } 
} 

注意「說明」中的類是隻讀字符串(沒有setter),但它是表中的一個鍵。我調用存儲過程來退出這個功能(主要轉化爲相應的字符串,返回上面的類),但如果我現在做這樣的事情:

// ... 
product.Cost = 20; 
myContext.SaveChanges(); 

我得到一個異常抱怨,有沒有映射爲「說明」字符串。我刪除了映射,因爲它是隻讀的,我不需要在類中包含「DescriptionFK」。有什麼辦法可以解決這個問題(只有POCO)。非常感謝。

回答

7

如果你只是希望有Description屬性作爲計算字段,添加[NotMapped]你的財產,以明確排除,然後生成數據庫:

public class Product 
{ 
    public int Id { get; set; } 
    public decimal Cost { get; set; } 

    [NotMapped] 
    public string Description { get; } 
} 
相關問題