【发布时间】:2014-12-01 17:20:16
【问题描述】:
我有这个问题:
SELECT DISTINCT
responseInstanceID
FROM
rRuleTriggerResponse rtr
LEFT JOIN
rRuleTrigger rt ON rtr.ruleTriggerID = rt.ruleTriggerID
LEFT JOIN
rRule r ON rt.ruleTriggerID = r.ruleTriggerID
WHERE
r.ratingLogicVersion = '<<RatingLogicVersion>>' // RatingLogicVersion - e.g. "4.8"
我需要将其转换为 Linq 查询(C#)(如果 responseInstanceID 存在则获取布尔值)
在 C# 中我有这个结构:
public partial class rResponseInstance : BaseEntity
{
public rResponseInstance()
{
this.rRuleTriggerResponses = new List<rRuleTriggerResponse>();
}
[Key("rResponseInstance", true)]
public int responseInstanceID { get; set; }
[Key("rQuestionInstance")]
public int questionInstanceID { get; set; }
public virtual ICollection<rRuleTriggerResponse> rRuleTriggerResponses { get; set; }
}
public partial class rRuleTriggerResponse : BaseEntity
{
[Key("rRuleTriggerResponse", true)]
public int ruleTriggerResponseID { get; set; }
[Key("rRuleTrigger")]
public int ruleTriggerID { get; set; }
[Key("rResponseInstance")]
public int responseInstanceID { get; set; }
public virtual rResponseInstance rResponseInstance { get; set; }
public virtual rRuleTrigger rRuleTrigger { get; set; }
}
public partial class rRuleTrigger : BaseEntity
{
public rRuleTrigger()
{
this.rRules = new List<rRule>();
this.rRuleTriggerResponses = new List<rRuleTriggerResponse>();
}
[Key("rRuleTrigger", true)]
public int ruleTriggerID { get; set; }
public virtual ICollection<rRule> rRules { get; set; }
public virtual ICollection<rRuleTriggerResponse> rRuleTriggerResponses { get; set; }
}
public partial class rRule : BaseEntity
{
[Key("rRule", true)]
public int ruleID { get; set; }
[Key("rRatingLogic")]
public string ratingLogicVersion { get; set; }
[Key("rRuleTrigger")]
public int ruleTriggerID { get; set; }
public virtual rRatingLogic rRatingLogic { get; set; }
public virtual rRuleTrigger rRuleTrigger { get; set; }
}
对于查询,我只有一个对象 - rResponseInstance model 。那么,是否可以仅使用 model 执行 SQL 查询?我对 linq 连接很不满意。(
【问题讨论】:
标签: c# sql sql-server linq collections