如何获取整个列表而不是仅第一个结果?网络核心3.1

Jér*_*RES 5 c# entity-framework-core

以下函数仅返回数据库的第一行,请指导我获取整行吗?

我的职能:

        private List<Phrases_Clp> PhrasesStringToListPhrases_Clp(string phrases_codes)
        {
            List<Phrases_Clp> phrases_Clps = new List<Phrases_Clp>();
            if (!String.IsNullOrEmpty(phrases_codes))
            {
                if (phrases_codes.Contains(","))
                {
                    string[] listprhases = phrases_codes.Split(",");
                    foreach (var item in listprhases)
                    {
                        var mentiontoinsert = _context.Phrases_Clps.FirstOrDefault(m => 
                        m.Phrase_Numero == item);
                        phrases_Clps.Add(mentiontoinsert);
                    }
                }
                else
                {
                    var mentiontoinsert = _context.Phrases_Clps.FirstOrDefault(m => 
                    m.Phrase_Numero == phrases_codes);
                    phrases_Clps.Add(mentiontoinsert);
                }

            }
            return phrases_Clps;
        }

Run Code Online (Sandbox Code Playgroud)

更新 :

它仍然给了我第一个结果。我想知道当我显示另一个表中与当前表中的单元格值相对应的信息时,是否应该在视图中进行更改。

表标识_产品 表标识_产品

表短语 Clp 表_短语_Clp

电流输出:

电流输出

所需的输出是显示每个产品的“提及危险”。

得到:

       //GET: EvaluationRisque/Create
       [Authorize(Roles = "Administrateur, Modificateur")]
        public async Task<IActionResult> Create()
        {
            List<Models.dbo.equipements_protection.Equipement_Protection> listsequipement = _context.Equipement_Protections.ToList();
            Create_Viewbags();

            var model = new EvaluationRisquesViewModel();

            var produitUtiliseByProduitId = await _context.Identification_Produit.FirstOrDefaultAsync();

            model.MentionsDanger = produitUtiliseByProduitId;

            model.List_Mentions_Danger = PhrasesStringToListPhrases_Clp(model.MentionsDanger.Mentions_Danger);

            return View(model);
        }
Run Code Online (Sandbox Code Playgroud)

视图页面中的 Bootstrap 模型:

<td>@foreach (var mention_danger in Model.List_Mentions_Danger)
     {
      <p> @mention_danger.Phrase_Numero : @mention_danger.Phrase_Libelle 
     </p>} 
</td>
Run Code Online (Sandbox Code Playgroud)

小智 3

因为您在这一行中使用 FirstOrDefault 函数:

 var mentiontoinsert = _context.Phrases_Clps.FirstOrDefault(m => m.Phrase_Numero == item);
Run Code Online (Sandbox Code Playgroud)

将其替换为Where函数。