是否可以在实体框架4(模型优先)中更改特定实体映射到的表的名称?我需要为每个客户创建一个模型,因此需要在表名前加上。也许更简单的是为每个客户使用一个数据库。最佳做法是什么?使用实体框架在运行时更改表名称4
0
A
回答
2
使用每个客户的数据库。数据库必须具有相同的模式。在运行时修改映射不是一个好主意。
编辑:指EDMX每个客户每个客户
模型。请注意,元数据是共享的。因此,在多租户应用程序(即我了解您的描述)中,每次元数据更改都会更改每个请求的元数据。在安全性和性能方面,使用单独的数据库看起来更好。
另一个问题是如果元数据可以在运行时更改。元数据存储在MetadataWorkspace
中。你可以阅读它们,但我不确定你是否也可以修改它们(我将在周末检查它)。
0
EF生成的模型根据您的数据库模式生成。我没有看到如何改变EF中的模式。不在我的小脑袋里计算。这就是说,你可以编写一个存储过程来改变表格,并通过你的EF上下文来调用存储过程。
+0
我不想重命名该表,我希望EF为每个表名称使用用户定义的(如代码中)定义的前缀。我没有尝试过,但我确信使用EF CF是微不足道的。但是,内部查询有一个问题妨碍我使用EF CF。 – Jsfsn 2011-03-25 00:27:10
相关问题
- 1. 在运行时更改模式名称 - 实体框架
- 2. 实体框架表名称更改
- 3. 在EF4(实体框架4)中更改数据库表名称
- 4. 更改实体框架模式名称
- 5. 如何使用实体框架更改应用程序名称
- 6. 更改实体框架中的ConnectionString 4
- 7. 如何在运行时更改实体框架模式?
- 8. 实体框架4表名前缀
- 9. 实体框架更改每个连接的架构名称
- 10. Bot框架名称实体
- 11. 实体框架更新表4/mvc 3!
- 12. 使用实体框架在运行时更改数据库结构?
- 13. 关于实体框架,在运行时
- 14. 使用实体框架在MVC中获取动态表名称
- 15. 使用实体框架4放弃更改POCO
- 16. 实体框架4合并两个实体之间的更改
- 17. 实体框架4
- 18. 实体框架4
- 19. 使用实体框架在运行时打开SQL CE文件4
- 20. 更改其字体名称后运行时更改UIbutton位置
- 21. Ninject - 实体框架 - 在运行期间更改上下文
- 22. 实体框架:更改表的值
- 23. 在运行时更改进程名称
- 24. 使用实体框架更新表
- 25. 动态传递列名在运行时的实体框架
- 26. 更改实体框架使用的连接字符串的名称
- 27. 在运行时修改实体框架模型
- 28. 实体框架:实体名称中的无效字符列表
- 29. 错误尝试使用实体框架来更新实体时,4
- 30. 实体框架:在运行时添加属性/实体
为什么它不是一个好主意?我参与了至少一些使用每个客户模型的项目(而不是每个客户的数据库)。并命名发布的企业产品Dynamics NAV。 – Jsfsn 2011-03-25 00:25:25
@Jsfsn:作为一名具有8年SQL经验的Dynamics NAV技术顾问,我敢说NAV并不是一个如何组织数据库的好例子。我认为SAP Business One可以做得更干净,但是他们拥有那些非常缩短的表名。除此之外,NAV的公司与1个以上的客户并不相同,更像是1个客户的细分。 – 2011-03-25 08:57:52