[英]Get List of Entity Models in DbContext Entity Framework Core 2.1
我正試圖找到一種方法來獲取我的DbContext中所有實體模型的列表。 例如,如果我在C#中定義了兩個名為Customer和Invoice的模型,通過代碼優先創建EF實體和數據庫,我現在如何查詢DbContext以獲取其中包含Customer和Invoice的List-即,那個環境中的所有實體? 我希望能夠調用一個返回所有實體的List的方法 - 而不是數據,只是一個實體列表。
在我看來,這應該是如此簡單,但要么它不容易,要么我錯過了一些東西 - 可能是后者。 ;-)。
有人可以指點我正確的方向嗎? 謝謝!!
您可以使用Model屬性獲取關聯的IModel ,然后使用GetEntityTypes方法枚舉所有IEntityType 。 ClrType財產IEntityType
會給你相關的類類型,如
DbContext db = ...;
var entityTypes = db.Model.GetEntityTypes().Select(t => t.ClrType).ToList();
IEntityType
有許多有用的屬性和(擴展)方法,用於獲取有關主/備用鍵,外鍵,導航,屬性等的信息,以IEntityType
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.