pre*_*ers 4 c# linq entity-framework iqueryable
我有两个名为Rank和CrewMembers的表.我想根据CrewMember的id获取Rank表中存在的rank名称.我已经将crewId作为参数传递,并且在此基础上该方法将返回该特定船员的等级.这就是我的代码 -
public string GetRank(int CrewId)
{
string rank = (from r1 in context.Rank
join r2 in context.CrewMember on r1.RankId equals r2.RankId
where r2.CrewId == CrewId
select r1.RankName);
return rank;
}
Run Code Online (Sandbox Code Playgroud)
当我构建代码时,我得到以下错误 -
无法将System.Linq.IQueryable类型隐式转换为字符串
我哪里错了?
ale*_*mac 12
您应该使用FirstOrDefault或SingleOrDefault:
public string GetRank(int CrewId)
{
string rank = (from r1 in context.Rank
join r2 in context.CrewMember on r1.RankId equals r2.RankId
where r2.CrewId == CrewId
select r1.RankName).SingleOrDefault();
return rank;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12751 次 |
| 最近记录: |