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

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

使用 Automapper 將模型傳遞給 ViewModel

使用 Automapper 將模型傳遞給 ViewModel

C#
ITMISS 2022-11-21 15:59:28
我正在從事 ASP.NET 核心項(xiàng)目。我想使用 Automapper 將模型映射到視圖模型,但是存在下面描述的問題 This is MyRepository public class MyRepository {     public async Task<IEnumerable<Cars>> GetAllCarsAsync()    {        return await _RepositoryContext.Set<Cars>().ToListAsync();    } }這是我的控制器 public class MyController: Controller {    [HttpGET]    public async Task<IActionResult> Create()      {          var car = await _MyRepository.GetAllCarTypesAsync();          var model = _mapper.Map<IEnumerable<CarsVM>>(car);          return View(model);      } }最后這是我的觀點(diǎn)@model  DataLayers.Models.ViewModels.CarsVM<form " asp-controller="MyController" asp-action="Create">  <label class="label" asp-for="Carname"></label>  <input class="input" type="text" asp-for="Carname">  <select>     <option> A carType </option>     <option>A carType </option>  </select></from>問題出在我的控制器上。var car 返回 IEnumerable,然后我們將結(jié)果映射到 CarsVM。當(dāng)我傳遞模型進(jìn)行查看時(shí),它期望 CarsVM 而不是 CarsVM 的 IEnumerable。我怎樣才能隱藏它們?如果現(xiàn)在可以轉(zhuǎn)換它們,那我該怎么辦?如何傳遞我的數(shù)據(jù)以供查看?
查看完整描述

1 回答

?
躍然一笑

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

我建議更新 automapper 行以轉(zhuǎn)換為 List 而不是 IEnumerable 接口,以便您可以確保視圖模型在控制器中具體化。查看存儲(chǔ)庫(kù)代碼很明顯,但如果您只能看到存儲(chǔ)庫(kù)返回 IEnumerable,則不是。


下面的主要更改是確保 AutoMapper 映射到視圖模型對(duì)象列表,并且視圖正在接收由這些視圖模型對(duì)象列表組成的模型。我假設(shè) CarsVM 對(duì)象是單個(gè) Cars 對(duì)象的視圖模型實(shí)例。


資料庫(kù)


public class MyRepository

{

    public async Task<List<Cars>> GetAllCarsAsync()

    {

        return await _RepositoryContext.Set<Cars>().ToListAsync();

    }

}

控制器


public class MyController: Controller

{

    [HttpGET]

    public async Task<IActionResult> Create()

    {

        var car = await _MyRepository.GetAllCarTypesAsync();

        var model = _mapper.Map<List<CarsVM>>(car);

        return View(model);

    }

}

看法


@model List<DataLayers.Models.ViewModels.CarsVM>

<form asp-controller="MyController" asp-action="Create">

    <label class="label" asp-for="Carname"></label>

    <input class="input" type="text" asp-for="Carname">

    <select>

       <option> A carType </option>

       <option>A carType </option>

    </select>

</from>


查看完整回答
反對(duì) 回復(fù) 2022-11-21
  • 1 回答
  • 0 關(guān)注
  • 127 瀏覽

添加回答

舉報(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)