我很难解释,但我会尝试。
AssignedTo是数据库中的Guid。我需要将它与AD中的Guids列表进行比较,以获得要显示的名称。
我做AD的东西没问题。更多的是我如何做,并在视图中显示有问题的名称。
感谢您的帮助。
_
查看:(模型是DB的实体模型)
<tbody>
@foreach (var item in Model)
{
<tr>
<td>@item.AssignedTo</td>
</tr>
}
</tbody>
控制器:
private MyEntities db = new MyEntities();
public ViewResult Index()
{
return View(db.Items.ToList());
}
AD代码:(不确定将其放在何处并使其可供视图访问。)
public string GetUserFromGuid(Guid g)
{
ActiveDirectoryModel adm = new ActiveDirectoryModel();
return adm.FetchContacts().Find(n => n.Value == g.ToString()).Text;
}
答案 0 :(得分:1)
调整您传递给视图的视图模型:
private MyEntities db = new MyEntities();
public ViewResult Index()
{
var model = db.Items.ToList().Select(x => GetUserFromGuid(x.AssignedTo));
return View(model);
}
然后在你看来:
@model IEnumerable<string>
...
<tbody>
@foreach (var item in Model)
{
<tr>
<td>@item</td>
</tr>
}
</tbody>
答案 1 :(得分:0)
我通过创建部分类来解决问题。
public partial class Item
{
public string AssignedToName { get; set; }
}
然后做一些接近Dimitri建议的事情......
model.ForEach(x => x.AssignedToName = GetUserFromGuid(x.AssignedTo));
然后显示它......
<td>@item.AssignedToName</td>