日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

初探EntityFramework——实体类结构映射

發布時間:2025/3/11 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 初探EntityFramework——实体类结构映射 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

實體類與數據表的映射有一套專用的規則。Code First 采用的慣例優于預先設置的設計,在沒有任何設置的情況下,自動檢測模型結構并推導出默認設置以簡化類的設計,因此不需要特別設置類的屬性即可完成模型設計。

例如,當DbContext的模型類中定義了DbSet<Product>屬性時,?按照慣例會以復數類名稱為映射的數據表名稱,因為Product自動映射到Products數據表。

Product中的屬性則逐一映射到Products數據表中的同名數據字段,比如Product類如下所示:

public class Product {public int Id {get;set;}public string Name {get;set;}public int Price {get;set;}public string Category {get;set;} }

其中名稱為Id的屬性(不區分大小寫,Id與ID效果相同)自動成為主鍵,類名+Id的屬性?名稱同樣會被推斷為主鍵,例如ProductId

EntityFramework同樣會在映射過程中自動推導出類屬性與數據字段的映射類型,如下圖所示:

SQLServer 與.NET 數據類型
SQL Server Database Engine type.NET Framework type
image,timestampByte[]
bigintInt64
intInt32
floatDouble
bitBoolean
char,nchar,ntext,varchar,nvarchar,textString/Char[]
date,datetime,datetime2DateTime
decimal,numeric,moneyDecimal
timeTimeSpan
uniqueidentifierGuid

注意:主鍵屬性映射字段不允許為Null,基本類型(比如int 類型)屬性映射的字段也不允許是Null,其他類型屬性(比如string)映射的字段均允許是Null.?

?

Product類映射到數據庫的表結構如下圖所示:

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

?

?更多信息,請參考微軟MSDN官方說明:EF微軟官方文檔


后續補充?

一份更具體的數據類型與.NET類型匹配情況表
SQL Server類型目錄SQL Server類型.NET類型C# 關鍵字
準確數字型bitsystem.Booleanbool
tinyintsystem.Bytebyte
smallintsystem.Int16short
intsystem.Int32int
bigintsystem.Int64long
smallmoney、money、decimal、numericsystem.Decimaldecimal
近似數字類型realsystem.Deciamlfloat
floatsystem.Doubledouble
字符串類型char、varchar、textsystem.Stringstring
nchar、varchar、ntextsystem.Stringstring
二進制字符串類型binary、varbinarysystem.Byte[]byte[]
imagesystem.Byte[]byte[]
rowversion(timestamp)system.Byte[]byte[]
日期類型datesystem.DateTime?
timesystem.TimeSpan?
small datetime、datetime、datetime2system.DateTime?
datetimeoffestsystem.DateTimeOffset?
其他類型hierarchyidNo built-in mapping or support?
xmlsystem.Stringstring
uniqueidentifiersystem.Guid?
sql_variantNo bulit-in mapping or support?

?

?

?

?

?

?

總結

以上是生活随笔為你收集整理的初探EntityFramework——实体类结构映射的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。