2010-01-12 5 views
0

Хотите знать, если я могу условно объединить результаты запроса LINQ из 4-х различных полей в таблице, которые являются флаги в 1 строку для каждой записи, так что это будет что-то вроде этого:LINQ результат запроса сцепленных

  dbContext.CONTACT_LOGs.Select(e => new 
      (e => new ContactLog 
      { 
       rec1 = e.Recommend1 ? "1 is recommended" : String.Empty, 
       rec2 = e.Recommend2 ? "2 is recommended" : String.Empty, 
       rec3 = e.Recommend3? "3 is recommended" : String.Empty, 
       rec4 = e.Recommend4 ? "4 is recommended" : String.Empty 
       //this doesn't work in a single query 
       ContactSummary = String.Concat(rec1, rec2, rec3, rec4) 
      }); 


      public class ContactLog 
      { 
      public string rec1 { get; set; } 
      public string rec2 { get; set; } 
      public string rec3 { get; set; } 
      public string rec4 { get; set; } 
      public string ContactSummary { get; set; } 


    } 

ли есть ли способ сделать это таким образом? Благодаря

+0

Можете ли вы быть более ясными или привести пример? –

+0

Вот вам, спасибо – VictorS

+0

Есть ли причина, по которой вы не можете просто добавить новое свойство в «ContactLog» и сделать там конкатенацию вместо запроса Linq? –

ответ

1

Я не уверен, если я понимаю ваш вопрос, но я бы просто добавить новое свойство к вашему ContactLog классу следующим образом:

public class ContactLog { 
    public string rec1 { get; set; } 
    public string rec2 { get; set; } 
    public string rec3 { get; set; } 
    public string rec4 { get; set; } 
    public string ContactComments { get; set; } 
    public string ContactLog { 
     get { 
     return String.Concat(rec1, rec2, rec3, rec4); 
     } 
    } 
} 

Нет необходимости в обременять запросы LINQ с этим

+0

Это похоже на то, что мне нужно, но единственная проблема, как вы можете видеть из вышеприведенного фрагмента, иногда они могут быть пустыми и в этом случае я хочу чтобы исключить их из конкатенации, но если все флаги верны, мне нужно получить «1,2,3,4 рекомендуется» в этой сводной строке – VictorS

Смежные вопросы