[英]Entity Framework 6 - Getting the field size
我需要使用Entity Framework 6獲取模型中列的字段大小(該模型在數據庫中定義,並且在運行時未知字段大小)。
我在這里看到一些EF4 / 5的示例代碼:
但不幸的是,此代碼在EF6中已損壞:
var test = objectContext.MetadataWorkspace.GetItems(DataSpace.CSpace);
if(test == null)
return null;
var q = test
.Where(m => m.BuiltInTypeKind == BuiltInTypeKind.EntityType)
.SelectMany(meta => ((EntityType) meta).Properties
.Where(p => p.Name == columnName && p.TypeUsage.EdmType.Name == "String"));
原因是objectContext.MetadataWorkspace.GetItems似乎不再返回與以前相同的集合類型,因此您不能僅使用“ where”方法等以相同的方式搜索集合集。
是否有人對如何在EF6中解決此問題有任何想法?
問題歸結於我的使用/包含。 這些是必需的:
using System.Data.Entity;
using System.Data.Entity.Infrastructure;
using System.Data.Entity.Core.Metadata.Edm;
using System.Linq.Expressions;
using System.Linq;
using System;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.