2010-06-15 90 views
4

当我有两个相关的表与.NET3.5SP1中的FK链接时,EF是否无法创建必要的实体?我看到支持这个复选框的位置被禁用,但它在.NET4中可用。实体框架为.NET 3.5缺少一些东西?

我有一个DB只有表中有关系的表。我需要构建一个Silverlight应用程序(SL4),以便管理此应用程序中的数据。我不能在服务器上使用.NET4 ...只有.NET3.5SP1,因此EF4中的FK关系位对我来说不可用。展望避免建设尽可能多的管道来从SL4应用尽可能回DB的...

回答

3

你使用Visual Studio 2010和目标.NET Framework 3.5的项目中的设置?

如果是这样的话,我想用“禁用复选框”你的意思是复选框,包括向导外键列从数据库中创建一个实体模型。 (这个复选框在VS2008中根本不存在,当它在VS2010中的目标是.NET 4.0时,它不会被禁用,因此我的理论是关于VS2010与.NET 3.5的。)

那么,那么对于你来说呢有比较好的消息:这个复选框并不意味着不会从外键约束链接的表创建实体关系。它们将在Entity Framework 1(.NET 3.5)中创建。您只有标量实体属性代表您的外键列。 (此复选框 - 只在.NET中可用4 - ,被选中,将在模型中包含这些属性。)相反,你总是要对付你的实体(检查,如果他们加载,手动加载它们或引用的对象将它们直接包含在查询中,等等)。

所以在.NET 3.5与实体模型关系工作,但外键约束仍表示正确,并自动创建,当你有少了几分安慰。只需让该向导运行并探索生成的实体模型。