EF仅包含现有表的子集

时间:2012-10-17 14:54:16

标签: entity-framework

我有一个包含许多表的现有数据库,只能使用存储过程访问(无O / RM)。我想使用Entity Framework和Code First方法在此数据库中创建新表。

我现有数据库中的所有表是否需要在我的Entity Framework类中进行建模?我能否仅在DbContext中手动编写我需要的新类吗?其他表真的需要保持不变,暂时远离O / RM。

注意:我将使用最新的EF5。

2 个答案:

答案 0 :(得分:7)

现在,Power Tools只允许您对数据库中的所有表和视图进行反向工程,如果您有一个拥有数百个对象的大型数据库,则可能会出现问题,您不想进行逆向工程。

但是,我找到了一个简单的解决方法:

为逆向工程创建新的技术用户。对于此用户,您只授予您希望进行逆向工程的表和视图的权限。

玩得开心!

答案 1 :(得分:2)

您没有义务使用EF映射任何给定的表格。如果您已有数据库,则可能需要考虑使用Microsoft提供的EF Power Tools对数据库进行逆向工程。我最近用一个MySQL数据库做了这个,我用它进行测试,效果很好!

如果您是EF的新手,PowerTools会为您编写大量代码,这有助于您掌握Code First的语法。您需要修改输出,但这是一个很好的开始。我真的相信这种方法会给你带来最少的麻烦。

可以在此处找到EF PowerTools:http://visualstudiogallery.msdn.microsoft.com/72a60b14-1581-4b9b-89f2-846072eff19d/