首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何构建用于匹配两个查询的自定义键,使用Linq到实体

如何构建用于匹配两个查询的自定义键,使用Linq到实体
EN

Stack Overflow用户
提问于 2013-07-29 07:48:28
回答 1查看 40关注 0票数 0

我希望将内存中的实体与DB表中的数据匹配,并返回一个新的内存中DTO,其中包含匹配信息的子集。现在,匹配涉及两列,因此我正在动态构建一个新的键。这是可行的,只要我在构建键之前执行查询,就可以有效地使用Linq到对象进行匹配。

当不立即执行查询时,我会收到这个MSDN文章描述的运行时异常。

这是我的代码和数据模型,简化了。我有过

  • 房间(如IEnumerable<Room>,已在内存中)
  • 区域(如IEnumerable<Room>,已在内存中)
  • 警报(来自DB,如上下文中的IQueryable )

警报器与区域和LocationIds相连。房间可以有多个区域,并且有一个LocationId。

我想在一套房间里建一套警报器。这涉及到将警报区域和LocationsId与每个房间的LocationId和区域相匹配。

代码语言:javascript
复制
from area in allAreas
let alarmKey = area.AreaName + area.Room.LocationId //AreaName is String, LocationId is integer
//....

但是,这一行涉及不支持的int到String格式。如何创建密钥?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-07-29 08:09:18

如果您不介意LocationId中的几个前导空格,您可以这样做

代码语言:javascript
复制
let alarmKey = area.AreaName + 
               SqlFunctions.StringConvert((double)area.Room.LocationId)

SqlFunctionsSystem.Data.Objects.SqlClient

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17918597

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档