gpt4 book ai didi

asp.net - 如何使用 ValueInjector 映射列表

转载 作者:行者123 更新时间:2023-12-02 01:04:17 26 4
gpt4 key购买 nike

我正在使用 ASP.NET MVC 3

有人可以帮我澄清一下这里发生了什么吗:

var person = new PersonRepository().Get();

var personViewModel = new PersonViewModel();
personViewModel.InjectFrom<LoopValueInjection>(person)
.InjectFrom<CountryToLookup>(person);

我的 Index View 上有一个网格。每行都是一个 CategoryViewModel 的实例。所以我要做的就是获取所有类别的列表,然后将每个类别映射到 CategoryViewModel,然后将此 CategoryViewModel 列表传递给 View 。我会做这样的映射吗?

IEnumerable<Category> categoryList = categoryService.GetAll();

我认为以下内容会起作用,但事实并非如此:

// Mapping
IList<CategoryViewModel> viewModelList = new List<CategoryViewModel>();
viewModelList.InjectFrom(categoryList);

最佳答案

据我所知值注入(inject)器不支持像 AutoMapper 这样的自动集合映射,但您可以使用简单的 LINQ 表达式并对每个元素进行操作:

IEnumerable<Category> categoryList = categoryService.GetAll();
IList<CategoryViewModel> viewModelList = categoryList
.Select(x => new CategoryViewModel().InjectFrom(x)).Cast<CategoryViewModel>()
.ToList();

关于asp.net - 如何使用 ValueInjector 映射列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7872405/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com