EF Code First中的高级查询

时间:2012-08-12 21:47:39

标签: entity-framework tsql

我有一张收集房地产记录的主表。此表与其他参考数据表有关系,因此总结它包含以下ID:

  • CountryId
  • TYPEID
  • PurposeId
  • CurrencyId
  • 等...

还有其他表格,如国家,类型,目的等......

在创建新的房地产记录时,基于“类型”,定义了一些“扩展属性”。因此,用户必须输入直接链接到所选“类型”的“扩展属性”的值。

扩展属性的一个例子:

  • 卧室

此属性可能包含一个或多个值,如:

  • 1
  • 2
  • 3

我正在存储扩展属性表和扩展属性值的另一个表,因为一个Property可能有一个或多个值。

对于给定的Type,可能有一个或多个这样的属性,因此我必须定义一个要链接的新表:

  • RealEstate ID
  • ExtendedProperty ID
  • ExtendedProperty Value ID

现在,该网站提供了一个搜索引擎,用户可以输入以下字段的搜索条件:

  • 国家
  • 类型
  • 目的
  • 一个或多个扩展属性(基于所选类型及其相关属性)

我需要查询数据库并返回完整的数据记录,即当我返回一个房地产记录时,我需要返回TypeID + TypeName和CountryID + CountryName等...换句话说,我需要加入所有那些表然后使用我从搜索条件收到的值进行查询,这样的标准可以是:

  • CountryId = 1
  • Type = 2
  • EP(1,5)(找到一个房地产记录,其中包含ID为“1”的扩展属性,并且该属性的值等于扩展属性值ID“5”。
  • 等...

我相信,所有其他表,它是正常连接和检查某些参数的问题,但是当我必须查询扩展属性时它会变得更难。

非常感谢。

0 个答案:

没有答案