[英]What is the safest and cleanest way to send data from controller to view?
我有这个问题我正在寻找答案,我看到了这个问题的答案
许多人在回答中提到既不使用 ViewBag 也不使用 ViewData 是“安全的”。 我不明白为什么,因为我对 Web 应用程序和它的整个概念以及整个 MVC 都不熟悉。 所以我的问题是:
我真的很感谢你的帮助!
有过争论。 我总是使用特定的视图模型。
您也可以使用 ViewBag 或 ViewData,但不是首选。
ViewData 不安全,因为,
ViewData["foo"]
可能没有在控制器中设置,但你试图访问它所以你会失败。 因此引入了使用语言动态特性的ViewBag
。
所以 ViewData 更安全一些。 然而,作为一个好的设计,每个视图创建视图模型对象是理想的。
另一种选择是强类型模型对象。 有些人更喜欢这样,因为它可以防止在使用动态 ViewBag 对象时可能发生的一些运行时异常。 它还允许使用自动完成等有用的 IDE 功能,并有助于生成更具可读性的代码。
Microsoft 的 Rick Anderson有一篇很好的博客文章,描述并给出了不同选项的示例,您可能会发现这些选项很有用。
如果强类型选项看起来像你想要追求的东西,本教程可能会有用: http : //www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/accessing -your-models-data-from-a-controller
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.