【问题标题】:Can you lazy load when model has associations, but the database does not?当模型有关联而数据库没有关联时,你可以延迟加载吗?
【发布时间】:2010-07-26 09:31:49
【问题描述】:

我正在处理一个旧数据库,如果可能的话,我不想以任何方式触摸或修改它。 我想构建一个使用它的数据的新应用程序,但尽管有主键和外键链接表,但数据库没有实际关系。

如果我将这些表导入实体框架模型并手动添加关联,我可以使用诸如延迟加载和 linq 之类的东西吗?

非常感谢, 可汗

【问题讨论】:

    标签: sql-server linq entity-framework lazy-loading


    【解决方案1】:

    这绝对是可能的。 Entity Framework 只生成包含连接或 where 子句的 SQL 查询,这些查询引用您在概念模型中定义为外键的列。生成的SQL直接由数据库执行。

    主键和外键仅在您的数据库中用于参考完整性。作为一个非常简单的测试,您可以直接在数据库中执行一条 SQL 语句,该语句连接两个没有外键关系的相关表。您会看到该查询可以正常工作。当您在模型中正确定义关系时,Entity Framework 的作用完全相同。

    【讨论】:

    • 同样的故事也适用于大多数 ORM。
    猜你喜欢
    • 2014-01-15
    • 1970-01-01
    • 1970-01-01
    • 2011-11-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多