繁体   English   中英

MVC:即使他们没有在 View 上列出,也保持 ViewModel 的价值

[英]MVC: Keep ViewModel Value even when they're not listing on View

关于 viewmodel 和 view,我有一个 viewmodel(我们称之为 viewmodelA),它有 50 列,以及几个视图,其中的列都是 viewmodelA 的一部分。

因为视图的列高度重复,我想在不同的视图中使用相同的视图模型。 但是,在此过程中,viewmodel 的价值似乎会丢失。

例如,viewmodelA 的所有 50 列都有值,但是当 'return View(viewmodelA)' 到 10 列视图时,其他 40 列(未在视图上列出)似乎丢失了它们的值,因此当回发到 Controller ,那 40 列变成 NULL。

我知道我可以通过为每个视图创建精确的视图模型来解决这个问题,但我想知道是否可以保留所有值,即使视图没有列出视图模型中的所有列?

如果这是您在请求处理中用于业务逻辑的服务器数据,则不应依赖 model 中的内容,因为用户可以在发送之前对其进行修改。

要回答您的问题,如果您想保留数据,您将不得不使用隐藏输入:

@Html.HiddenFor(m => m.ValueYouWantToKeep)

另一种选择是将这些数据保存在 session 中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM