ASP.NET MVC在视图或控制器中设置文本

时间:2013-07-19 02:24:54

标签: asp.net-mvc-4 asp.net-mvc-viewmodel

用于设置文本的MVC(用于测试,SOC和脚手架)的最佳实践是什么(例如,页面标题为h1,h2 ..)

在控制器中执行它是否更好,填充视图模型并将其发送到视图 或直接在视图中键入文本?

此外,我将使用ressouces文件作为全局文本(如按钮文本,菜单文本)和本地视图以查看特定文本。

2 个答案:

答案 0 :(得分:0)

视图仅用于向用户显示输出。根据您的要求,您可以:

1)直接在视图中输入文本<h2>Hello World</h2>(对于不会改变的静态内容)

后两个选项适用于动态内容,其中内容可以从数据库或其他输入中接收。

2)使用ViewBag将信息传递给视图(在这种情况下,您可以在控制器中设置它,即ViewBag.HelloWorld = "Hello World"<h2>@ViewBag.HelloWorld</h2>

3)使用模型将信息传递给您的视图。如果可能,这应该是您的首选选项。在您的特定情况下,您可以使用控制器从全局资源中检索内容,将其绑定到模型并将其传递给视图。

获取数据的逻辑应该来自控制器,View的功能应该只是显示它。

答案 1 :(得分:0)

我建议将viewModel上的属性绑定到UI。 这不仅更容易测试,而且更灵活。它可以更轻松地实现多语言支持等功能。 如果可以的话,我建议在标记中避免硬编码文本