簡體   English   中英

我如何獲取LINQ中的值列表

[英]how can i get list of values in LINQ

我在使用LINQ時遇到了一個奇怪的問題,我希望有人可以向我解釋發生了什么。

我有一個模型:

public class AnswerModel
{
   public string Question { get; set; }
   public IEnumerable<Answer> Answers { get; set; }
}

我想根據這樣的視圖中的問題獲取所有答案的列表:

q1 a1a2a3a4

q2 a1a2a3a4

and so on
var q = db.Answers.Where(a => a.Question == "q1")
       .SelectMany(a => a.Answers).ToList();
var dic = list.ToDictionary<string, string>(t=>t.Question, t=> t.Answers == null ? string.Empty : String.Join(',', t.Answers.Select(t=>t.Name));

這將是:

q1 a1,a2,a3,a4

q2 a1,a2,a3,a4

您可以將','替換為String.Empty。

也許這個嗎?

var view = AnswerModels
    .Select(am => new
                      {
                          am.Question, 
                          Answers = string.Join("", am
                                                    .Answers
                                                    .Select(a => a.ToString())
                                                    .ToArray())
                      });

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM