代码之家  ›  专栏  ›  技术社区  ›  Xander

从linq到实体查询返回什么

  •  1
  • Xander  · 技术社区  · 15 年前

    我打电话给你

    我最终得到了一个包含TableData对象的行。

    我应该从类库方法返回什么?

    我认为返回TableData对象会很酷,但是我发现如果您对它进行更改并调用save,它实际上会更新数据库,我不希望它超出我的类库。

    人们通常返回什么作为结果对象?

    3 回复  |  直到 15 年前
        1
  •  1
  •   Henk Holterman    15 年前

    Detached 更改不会传播到数据库。

        2
  •  2
  •   John Egbert    15 年前

    1. 打开你的.EDMX
    2. 在模型的可视视图的空白处单击鼠标右键,然后选择“添加代码生成项”

    然后,您的模型将是您希望从存储库中返回的模型,并且当您希望将它们持久化回数据库时,您对实体所做的更改将被跟踪。

        3
  •  0
  •   n8wrl    15 年前

    这是一个伟大的问题,因为对我来说,它确实指向了关注点的分离。一方面,你想把“本机”的数据拿回来做检查。但另一方面,您可能不希望所有的“实时数据包袱”。

    我不使用EF,但在我们自己的ORM-ish-DAL中,这正是它的工作原理-工厂和服务是通用的,并返回您所要求的。不想担心编辑吗?请求没有任何可写属性的接口。

    推荐文章