我有query1导致低级控制器和查询导致高级控制器。我试图获取我的方法,首先读取query1然后查询。当我登录时,它总是导致查询 - 低级页面,而不是高级页面。如果可能的话,请建议。
public UserDetail full(string username, string password)
{
var query1 = from s in db.Subscriptions
join u in db.UserDetails on s.sUID equals u.uID
where s.sPrice_ExpiryDate >= DateTime.Now &&
s.sPID.Value == 163 &&
s.sWIC_All.Value == true &&
u.uUsername == username &&
u.uPassword == password
select u;
var query = from s in db.Subscriptions
join u in db.UserDetails on s.sUID equals u.uID
where s.sTrialExpiryDate >= DateTime.Now &&
s.sPID.Value == 163 &&
u.uUsername == username &&
u.uPassword == password
select u;
if (query1 != null)
{
return query1.FirstOrDefault();
}
return query.FirstOrDefault();
}
谢谢。
答案 0 :(得分:2)
query1
永远不会为空。这是一个查询。
var result1 = query1.FirstOrDefault();
if (result1 != null)
{
return result1;
}
return query.FirstOrDefault();
或者,简写:
return query1.FirstOrDefault() ?? query.FirstOrDefault();