ASP.MVC2选择要在控制器中显示的图像的最佳方法是什么

时间:2010-10-01 20:16:25

标签: c# asp.net asp.net-mvc-2

我正在玩一个ASP.MVC网站,我想要显示三个图像中的一个,具体取决于我所拥有的强类型模型中枚举的值。

我可以在视图中使用IF / Case语句,但它应该是我觉得控制器的责任,实现它的最佳方法是什么?

2 个答案:

答案 0 :(得分:2)

如果您有Enumerable<YourModel>,则可能需要从控制器向视图提供Dictionary<YourEnum, Uri>

这样,控制器可以决定有哪些有效图像等。

但是,选择图像似乎是一种基本的视图限制活动。作为练习,想象一下如果我们实际驱动WinForms应用程序而不是Web应用程序的控制器,您将如何处理此问题。

如果是我,我会使用Dictionary<YourEnum, string>,其中字典中的值是图像的名称。然后,我将使用URL路由选择浏览器应该在哪里获取图像。

答案 1 :(得分:1)

我只需让控制器选择一个图像,然后将图像传递给视图。在视图上,只需使用传递的值来渲染图像。