簡體   English   中英

在Entity Framework中使用計算的DateTime列

[英]Using computed DateTime columns in Entity Framework

StoreGeneratedPattern="Computed"timestamp類型的列上完美運行。 但是你不能將TimeStamp顯示為人類可讀的形式。

因此,您無法向用戶顯示“此行已在{TimeStamp}上修改”,因為您無法將SQL時間戳解析為DateTime。

現在我還可以為DateTime列創建計算列,所以我不需要手動設置它嗎? myEntity.LastModification = DateTime.Now

更不用說它會非常容易出錯,如果有些用戶真的想做壞事,只需改變他的電腦時間。

是的,如下所述: 有沒有辦法為列指定默認值? 我的數據庫中的一些DateTime列設置為getdate(),但EF不知道這些默認值

提取:

...如果將StoreGeneratedPattern設置為Identity(如果值僅在插入時計算)或Computed(如果在每次更新時計算),則當您調用SaveChanges時,EF將獲取在數據庫中生成的值並將其帶入回來更新你的對象......

編輯:要更新數據庫服務器端修改日期,請按照此答案https://stackoverflow.com/a/8461681/1679310 Computed設置將執行重新加載

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM