第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

ASP.NET Core:將模型綁定到多個(gè)選擇列表時(shí)出現(xiàn)問題

ASP.NET Core:將模型綁定到多個(gè)選擇列表時(shí)出現(xiàn)問題

C#
江戶川亂折騰 2023-09-24 15:54:58
我有一個(gè)正在處理相關(guān)數(shù)據(jù)的 Web 應(yīng)用程序,我創(chuàng)建了一個(gè)推薦實(shí)體,其中包含其他屬性之間的患者、請(qǐng)求者和此推薦的不同顧問。我還有患者、請(qǐng)求者和顧問模型。我已經(jīng)能夠使用患者和請(qǐng)求者的選擇列表,他們與轉(zhuǎn)介實(shí)體具有 1:n 關(guān)系。但是,我與顧問之間存在問題,因?yàn)樗麄兙哂?n:m 關(guān)系,我正在使用多個(gè)列表,我可以顯示我的顧問列表并選擇多個(gè)顧問,但當(dāng)我發(fā)布數(shù)據(jù)時(shí),它不綁定到 ReferralConsultants我正在失去它。這是引用控制器的 [get] 編輯操作。var referral = await _context.Referral                .Include(r => r.Patient)                .Include(r => r.Requester)                .Include(r => r.ReferralConsultants)                    .ThenInclude(r => r.Consultant)                .AsNoTracking()                .FirstOrDefaultAsync(r => r.ID == id);            if (referral == null)            {                return NotFound();            }            ViewData["Patients"] = new SelectList(_context.Patient, "ID", "FullName", referral.PatientID);            ViewData["Requesters"] = new SelectList(_context.Requester, "ID", "FullName", referral.RequesterID);            var consultants =  from c in _context.Consultant                                    select new                                    {                                        ConsultantID = c.ID,                                        c.FullName                                    };            ViewData["Consultants"] = new MultiSelectList(consultants, "ConsultantID", "FullName", referral.ReferralConsultants);            return View(referral);這是我的觀點(diǎn)<form asp-action="Edit">            <div asp-validation-summary="ModelOnly" class="text-danger"></div>            <input type="hidden" asp-for="ID" />            <div class="form-group">                <h3>Patient Information</h3>                <label asp-for="PatientID" class="control-label">Patient</label>                <select asp-for="PatientID" class="form-control" asp-items="ViewBag.Patients"></select>                <span asp-validation-for="PatientID" class="text-danger"></span>我唯一缺少的是當(dāng)我處于[帖子]編輯操作時(shí)能夠知道哪些顧問已被選擇。
查看完整描述

2 回答

?
繁花不似錦

TA貢獻(xiàn)1851條經(jīng)驗(yàn) 獲得超4個(gè)贊

在模型中Referral,將 的類型更改ReferralConsultantsICollection<int>(或任何類型Consultant.ID),對(duì)于選擇元素,只有值(ConsultantID在本例中)包含在表單提交中。如果您在瀏覽器中檢查視圖的生成源,這一點(diǎn)就會(huì)變得很清楚。


查看完整回答
反對(duì) 回復(fù) 2023-09-24
?
慕的地6264312

TA貢獻(xiàn)1817條經(jīng)驗(yàn) 獲得超6個(gè)贊

我最終解決了這個(gè)問題,執(zhí)行以下操作:


我創(chuàng)建 MultiSelectList 項(xiàng)并將其發(fā)送到視圖,如下所示。


ReferralsController.cs


var consultants =  from c in _context.Consultant

                                    select new

                                    {

                                        ConsultantID = c.ID,

                                        c.FullName

                                    };


            ViewData["Consultants"] = new MultiSelectList(consultants, "ConsultantID", "FullName", referral.ReferralConsultants.Select(r => r.ConsultantID).ToArray());

            return View(referral);

在視圖中


   <div class="form-group">

        <label class="control-label d-inline">

                    Consultants

        <select multiple name="selectedValues" class="form-control" asp-items="ViewBag.Consultants"></select>

        </label>

   </div>

當(dāng)我提交表單時(shí),這會(huì)將 selectedValues 發(fā)送到我的控制器。然后我只需要在編輯[帖子]中獲取這些值并將它們保存在數(shù)據(jù)庫(kù)中。


public async Task<IActionResult> Edit(int id, [Bind("ID,PatientID,RequesterID,DateIssued,DateRequested,Description,Type, Status")] Referral referral, string [] selectedValues)



查看完整回答
反對(duì) 回復(fù) 2023-09-24
  • 2 回答
  • 0 關(guān)注
  • 157 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)