如何通过Entity Framework查询INFORMATION_SCHEMA?代码优先实现咨询
基于EF Code-First封装INFORMATION_SCHEMA元数据访问层
最近我在开发一款依赖数据库元数据分析的应用,核心逻辑就是查询INFORMATION_SCHEMA视图,再用拿到的数据执行后续任务。为了让数据操作更简洁,我在INFORMATION_SCHEMA的表/视图之上实现了一套Code-First风格的Entity Framework层。
选Code-First的原因很实在:我试过用Database-First的方式,但始终没找到可行的方案来映射并查询INFORMATION_SCHEMA这个特殊架构。
下面是我目前的实现代码片段:
[Table("INFORMATION_SCHEMA.SCHEMATA")] internal class Schema { #region Keys [Key, Column("CATALOG_NAME", Order = 0)] public string CatalogName { get; set; } [Key, Column("SCHEMA_NAME", Order = 1)] public string SchemaName { get; set; } #endregion // 对应INFORMATION_SCHEMA.SCHEMATA的其他字段 public string SchemaOwner { get; set; } public DateTime? DefaultCharacterSetCatalog { get; set; } }
内容的提问来源于stack exchange,提问作者Cédric Bourgeois
相关产品推荐
相关产品推荐

