【发布时间】:2017-11-23 17:49:21
【问题描述】:
我目前正在从事基于 MVC 5 的项目。现在为了从数据库中检索少量文本内容,我已经调用 API 来获取要在视图中使用的文本。这里我的视图是一个基本简单的表单,其中很少有文本来自数据库。
现在在加载页面时,我发现在加载页面时最初没有加载图像。我使用 API 调用从数据库中获取图像路径,其中存储了缓存中的特定数据列表。
现在我不确定应该在哪里调用 API。我创建了通用函数来调用 API 以检索数据。
我必须选择选择
1) 将调用直接放在我的图像标签内的 Src 属性中
<img src="@myfunctioncall" style="max-height:50px;" />
2) 在视图顶部的 C# 块内,我应该声明变量,然后调用 API,然后在我的图像标签内的 Src 属性中使用该变量。
在视图之上
@{
string myVal = myfunctioncall;
}
然后在我的 img 标签中使用 myVal
.........Code......
<img src="@myVal" style="max-height:50px;" />
.........Code......
我不确定页面的呈现方式以及完成工作的最佳方法。
【问题讨论】:
-
它不应该出现在您的视图中。对方法的调用应该在控制器中(您可以在其中进行测试),并且您将模型传递给包含该调用结果的视图。
-
View 不是为处理代码逻辑而设计的,逻辑任务应该由控制器动作方法来处理。你可以利用 viewmodel 来做到这一点。
标签: c# asp.net-mvc asp.net-mvc-4 view