在以前的项目开发之中,经常会遇到这样一个问题:比如在外面项目的架构设计之中,我们采用MVC和EntityFramework来构建一个Web应用程序。比如我们采用常用的多层架构,例如有Presentation层、BusinessLogic层、DataAccess层等,各层之间是相对独立并且职责分明的。比如我们在Presentation层中会定义ViewModel,在DataAccess层中的DbContext部分又会由EntityFramework来自动生成StorageModel,或者叫做DataModel。然后我们从DataAccess层从数据库抓取到数据之后需要将这些数据传递给viewModel,并最终呈现给前段用户,当然两种Model之间定义的字段(属性)可能会有所区别,这个我们将会在稍后讨论。

  我们先来看看如何解决这一类问题。首先最朴素笨拙的办法就是,逐个属性的为对象赋值,例如这样:

大学生就业培训,高中生培训,在职人员转行培训,企业团训

var viewModels = new List<EmployeeViewModel>();
            List<EmployeeStorageModel> storageModels = new List<EmployeeStorageModel>();            if (storageModels.Count > 0)
            {
                EmployeeViewModel viewModel = null;                foreach (var storageModel in storageModels)
                {
                    viewModel.Number = storageModel.Name;
                    viewModel.Nam
        
		

网友评论