首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在linq到sql中检查下面的场景?

如何在linq到sql中检查下面的场景?
EN

Stack Overflow用户
提问于 2012-05-07 05:37:16
回答 1查看 53关注 0票数 0

用户:

代码语言:javascript
运行
复制
userid   username               password
1        venkat reddy           sa
2        reddy                  as
3        re                     sa

位置:

代码语言:javascript
运行
复制
id  userid             lat           lon
1     1                14.00       15.00
2     2                15.00       17.23
3     3                15.00       17.23

之友:

代码语言:javascript
运行
复制
id    userid      friendid            isActive
1      1            2                   true
1      2           1                    true

我需要进行查询,比如如果我传递了userid=1username=re,那么我需要获得以re开头的所有行,如果该用户已经是该userid的朋友,则给出像already friend、他的用户名和用户if这样的状态消息。如果用户现在不是朋友,那么给出他的详细信息,比如用户名和userid。

请告诉我..。

Ex: userid =1 username=re

然后我需要输出

代码语言:javascript
运行
复制
 <OutputResponse>
    <Response>
      <userid>2</userid>
      <username>reddy</username>
      <lat>15.00</lat>
      <lon>17.23</lon>
      <status>already friend</status>
    </Response>
    <Response>
      <userid>3</userid>
      <username>re</username>
      <lat>15.00</lat>
      <lon>17.23</lon>
      <status>not a friend as of now</status>
    </Response>
 </OutputResponse>
EN

回答 1

Stack Overflow用户

发布于 2012-05-11 11:41:42

你可以从这样的事情开始。

代码语言:javascript
运行
复制
int userid=1;
string username="re";

var result=(from q in Users
                join qq in Location on q.id equals qq.userid
            where q.Username.StartsWith(username)       
             select new
            {
               userid=q.Id,
               username=q.Username,
               lat=l.lat,
               lon=l.lon,
               status=Friends.Where(z=>z.Friendid==q.Id&&z.Userid==userid).Count()>0?"already friend":"not a friend as of now"

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

https://stackoverflow.com/questions/10477157

复制
相关文章

相似问题

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