2011-01-13 222 views
21

嘗試設置日期時間字段的默認值以取當前時間。在SQL的現場設計師,我會用getdate()。我應該在Entity Framework的設計器中使用什麼?在EF設計師日期時間設置默認值

THX

+0

有沒有我的下面的答案運氣? – RPM1984 2011-01-16 02:29:43

回答

28

集 'StoredGeneratedPattern' 到Computed反對在EDMX領域。

雖然您仍然需要SQL Server的默認值,但上述設置將確保EF榮譽那樣。

-4

右鍵單擊edmx,打開並選擇xml編輯器,找到2008年至2005年的「ProviderManifestToken」更改。保存。

2

大廈在RPM1984's answer

  1. 選擇具有默認值的字段,Created_On在我的例子,你的EDMX內提交
  2. 轉到屬性面板
  3. 選擇StoreGeneratedPattern屬性
  4. 然後將值更改爲個已計算

EDMX to Properties panel

-2

在實體框架5和6設置默認值,通過改變T4模板文件

製造變化低於.TT(模板文件) 除去如果條件在管線34

34 if (propertiesWithDefaultValues.Any() || collectionNavigationProperties.Any() || complexProperties.Any()) 
35 { 

添加

59 OnCreated(); 
60 } 
61 
62 partial void OnCreated(); 
63 <# 

參照這一形象 http://i.stack.imgur.com/DdlNB.png 紅色意味拆卸和綠色的手段增加

這將在所有實體類與OnCreated方法添加構造函數。

像下面

public partial class Category 
{ 
    public Category() 
    { 
     this.Products = new HashSet<Product>(); 
     OnCreated(); 
    } 

partial void OnCreated(); 
public int Id { get; set; } 
public string Name { get; set; } 

public virtual ICollection<Product> Products { get; set; } 
} 

然後使用相同的命名空間實體的創建類文件。

public partial class Category 
{ 
    partial void OnCreated() 
    { 
     Name = "abc" 
    } 
} 

參考下面的回答更多細節 https://stackoverflow.com/a/38882032/5475124

0

kidos對於這個答案,雖然它並沒有爲我StoreGeneratedPattern屬性值設置爲已計算StoreGeneratedPattern屬性值設置爲後工作身份爲我工作,我設置默認「GUID」爲用戶ID UNIQUEIDENTIFIER類型