c# - 我应该实例化一个新模型吗?

标签 c# asp.net-mvc class

MVC。我正在将数据传递到模型中的 View 。在我的存储库中,我将 linq 结果映射到模型。在 Controller 中我发送数据。我应该做哪一个:

List<PersonModel> people = new List<PersonModel>();
people = repo.GetPersonList();
return View(people);

或者

List<PersonModel> people = repo.GetPersonList();
return View(people);

正如我提到的,在 repo 中,我使用新的模型实例将结果映射到模型:

var query = from p in _db.Person
                     orderby f.LastName
                     select new PersonModel
                     {
                         Id = f.PersonId,
                         LastName = f.LastName
                     };
return query.ToList();

两者皆可。我使用第二个,因为根据我的想法, repo 正在创建一个新模型,然后在我调用 repo.GetPersonList 函数时将其传递给 Controller ​​。我是否也应该在 Controller 中创建一个新实例,还是照原样继续?

最佳答案

选择第二个。

您的第一个代码段有多余的 new List<T>分配一个新列表的调用,而下一行使用来自 repo 的新创建列表覆盖该引用.完全没有必要。

关于c# - 我应该实例化一个新模型吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30948289/

相关文章:

c# - for 循环中的预递减值在第一个循环中未正确递减值

c# - 升级到 .NET 6 时,Web Project 抛出运行时异常

jquery - 如何将 jqGrid 与 ASP.NET MVC 结合使用?

asp.net-mvc - 如何[以及在哪里]使用 ModelBinder 实现验证

javascript - 使用 js 或 jquery 将超链接更改为其他内容

c# - .NET 的 JavaScriptSerializer.Deserialize() 忽略来自 JSON 的数字中的小数点

c# - 使用一个属性为 Controller 中的所有操作添加路由前缀

python - 从 Python 中的类中打印列表

python - 如何从类方法外部访问类方法内部的变量?

c# - XAML IMultiValueConverter 宽度自动或 *