显示数据从ViewBag到表
本文关键字:到表 ViewBag 数据 显示 | 更新日期: 2023-09-27 18:16:48
我试图从特定目录中检索.dll文件的文件信息列表,以显示在ASP上。净的网页。我想要显示的信息是文件名,最后修改的日期和版本。
到目前为止,我有数据被存储在一个ViewBag和显示在视图中,但它是混乱的,我希望它被显示在一个表。
是否有一种方法从ViewBag中获取数据并将其放置在表中,或者有比使用ViewBag更好的方法?
这是到目前为止我为视图编写的代码:
@using System.Diagnostics
@{
ViewBag.Title = "Versions";
}
<h2>Versions</h2></br>
<h3>File Name Last Modified Version</h3>
@ViewBag.FileList
@for(int i =0; i < ViewBag.FileList.Length;i++)
{
<p>
@ViewBag.FileList[i];
@{ FileInfo f = new FileInfo(ViewBag.FileList[i]);
<table>
<td><tr>@f.Name</tr></td>
<td><tr> @f.LastAccessTime</tr></td>
</table>
FileVersionInfo currentVersion = FileVersionInfo.GetVersionInfo(ViewBag.FileList[i]);
@currentVersion.FileVersion
}
</p>
}
ViewBag不应该被这样利用。使用视图模型
在控制器的动作中像这样传递数据,
public ActionResult Files()
{
List<FileInfo> fileNames = ...get file names
return View(fileNames);
}
在你看来,在右上方,定义对象的类型
@model IEnumerable<System.IO.FileInfo>
你的表格应该按照下面的方式布局。
<table>
<tbody>
@foreach (var item in Model)
{
<tr>
<td>@item.Name</td>
<td>@item.LastAccessTime</td>
</tr>
}
</tbody>
</table>