代码之家  ›  专栏  ›  技术社区  ›  Andrew Connell

缺少.NET 3.5的实体框架?

  •  4
  • Andrew Connell  · 技术社区  · 15 年前

    当我有两个与.net3.5sp1中的fk链接的相关表时,是否不可能让ef创建必要的实体?我看到支持这个的复选框在哪里被禁用,但它在.net4中可用。

    我有一个数据库,其中只有包含关系的表。我需要构建一个Silverlight应用程序(SL4),它允许管理此应用程序中的数据。我不能在服务器上使用.net4…仅限.net3.5sp1,因此EF4中的fk relationship位对我不可用。希望尽量避免建造更多的管道,从SL4应用程序返回数据库…

    1 回复  |  直到 15 年前
        1
  •  3
  •   Slauma    15 年前

    在项目设置中是否使用Visual Studio 2010和Target.NET Framework 3.5?

    如果是这样的话,我猜“禁用复选框”是指在向导中包含用于从数据库创建实体模型的外键列的复选框。(此复选框在VS2008中根本不存在,在VS2010中针对.NET 4.0时,它不会被禁用。因此,我关于VS2010与.NET 3.5的理论。)

    因此,还有一个相对好的消息要告诉您:这个复选框并不意味着不会从由外键约束链接的表中创建实体关系。它们也将在实体框架1(.NET 3.5)中创建。您将只拥有表示外键列的标量实体属性。(此复选框-仅在.NET 4-中可用-选中将在模型中包含这些属性。)相反,您必须始终处理实体中的引用对象(选中,如果已加载,则手动加载或直接在查询中包含这些对象,依此类推)。

    因此,在.NET3.5中处理实体模型中的关系时,您的舒适度要低一些,但是外键约束仍然被正确地表示并自动创建。只需让向导运行并浏览生成的实体模型。