![](/img/trans.png)
[英]DataValidation Model / ViewModel / Entity Framework Code First
[英]Entity Framework model or viewmodel for listing data?
试想一下,如果我有一个包含20个字段的模型,现在有1000条记录, 但是我的数据库每天都在增长 ,那么我想在一个剃须刀页面中列出它们,并显示所有它们,但只需要5个字段。
我只想知道是否可以将包含所有字段的模型返回到视图并在视图中选择需要的字段,还是应该使用需要的字段创建viewModel呢? 我担心表现。
绝对创建一个视图模型以仅显示您需要的字段。 不要公开出于性能和安全性原因都不需要的任何字段。
当然,您可以在服务器端或客户端过滤数据。 但是最好的方法是在服务器端过滤数据,以尽可能减少服务器负载和网络流量。 这也使您的应用程序具有更高的响应速度和更好的性能。 使用IQueryable接口进行服务器端过滤(请在此处查看更多信息)。
使用服务器端筛选的一个副作用是具有更好的安全性。
使用viewModel可以仅通过传递页面上必需的字段来封装属性。 当您处理大量字段时,可以,使用ViewModel可能会提高性能。 通过使用ViewModal,您可以保持应用程序的清洁,并分离所有逻辑。 :)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.