在缓存中从MVC渲染图像而不回发

时间:2012-01-05 06:27:46

标签: image model-view-controller

我有一个下拉列表,其中包含一些StudentCode列表... 当用户选择任何学生代码时,学生数据应以学生的形象...

的形式显示

用于显示学生图像,我把学生图像放在缓存中...我有一个Iframe从缓存中获取字节数据并在我的页面上渲染该图像...问题是......这个东西需要在至少1回发......

我可以制作一些部分回发来渲染这张图片吗?

1 个答案:

答案 0 :(得分:2)

我发现实施存在一些问题。

1)您应该避免使用IFrame,因为有更好的方法来处理网页的渲染部分。

2)将图像存储在缓存中意味着您实际为下拉列表中的每个学生下载了所有图像并将它们放在缓存中。如果有100名学生怎么办?获取所有这些图像并存储它们可能需要大量资源。

我建议你在下拉列表选择值更改(通过ajax调用)上执行autopostback,它会调用一个方法,该方法将返回包含特定学生所需信息的部分视图,包括图像。

我发现使用Ajaxify库(http://max.jsrhost.com/ajaxify/)对于ajax调用来说非常简单方便。

你可以在没有ajax的情况下做同样的事情,在这种情况下,整个页面将以相同的结果重新加载。