我有我試圖重構,因爲它不太好一些LINQ代碼:C#LINQ當條件如果
基本上,我想知道是否有執行以下一個更好的辦法:
if (!string.IsNullOrWhiteSpace(_filter.AssignedTo)
{
var query = from ticket in dataClassesDataContext.TicketsIssues
where ticket.ClosedDate == null
&& cUser.GetUserNameUsingGUID(ticket.AssignTicketToUser) == _filter.AssignedTo
select new
{
Priority = ticket.TicketPriority.TicketPriorityName,
Description = ticket.Description.Replace("\n", ", "),
};
}
else
{
var query = from ticket in dataClassesDataContext.TicketsIssues
where ticket.ClosedDate == null
select new
{
Priority = ticket.TicketPriority.TicketPriorityName,
Description = ticket.Description.Replace("\n", ", "),
};
}
它們都是相同遠離where子句是用於AssignTicketToUser檢查。
我希望有更好的方法來避免使用if else語句嗎?我有一些這樣的代碼塊,不想重複代碼!
而不是'condition1? true:condition2'你可以寫'(condition1 || condition2)'。 –
謝謝,這正是我正在尋找....並感到尷尬,我沒有想到這個自己(一個新的嬰兒和深夜工作的組合!)。謝謝 – Belliez