entity-framework – 获取Model模式,以使用不支持CreateDatabase
我正在使用Entite Framework 5的SQLite提供程序,但它不支持Create Database,因此无法自动创建数据库. (代码优先) 有没有办法在运行时获取Model模式,以便我自己创建SQL“CREATE TABLE”命令? 如果不是在运行时,以其他方式获取模式,那么我知道如何正确创建表? 谢谢! 解决方法A)至于在运行时部分获得模型模式(都是我早先的帖子) 见这个How I can read EF DbContext metadata programmatically? 和How check by unit test that properties mark as computed in ORM model? 另外这个用于自定义初始化程序Programmatic data transformation in EF5 Code First migration 话说回来… 我看到的问题是你实际拥有数据的地点和位置. 在初始化程序中可能 – 但使用不同的方式来获取该信息 – 上述内容不可用. B) 有关详细信息,请查看EF source code 到目前为止,这更像是一个“收集的信息” – 以防它可以帮助您随处获得它.不是真正的解决方案.我明天再补充一些. 编辑: 要获得真正的数据库元数据,请查看其他DataSpace,这应该可以帮助您到达正确的位置… var ssSpaceSet = objectContext.MetadataWorkspace.GetItems<EntityContainer>(DataSpace.SSpace).First() .BaseEntitySets .First(meta => meta.ElementType.Name == "YourTableName"); 如果在调试器中查找,Table属性应该具有实际的表名. How I can read EF DbContext metadata programmatically? (编辑:徐州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |