通过Active Directory方法从ID获取名称
本文关键字:获取 ID Active Directory 方法 通过 | 更新日期: 2023-09-27 18:18:38
我有点难以解释。
assigndto是数据库中的Guid。我需要将其与广告中的Guids列表进行比较,以获得要显示的名称。
我做广告没有问题。问题更多的是如何在视图中显示名称。
谢谢你的帮助。
_
View:(Model is Entity Model of 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());
}
广告代码:(不知道该把它放在哪里,让它可以访问视图。)
public string GetUserFromGuid(Guid g)
{
ActiveDirectoryModel adm = new ActiveDirectoryModel();
return adm.FetchContacts().Find(n => n.Value == g.ToString()).Text;
}
调整传递给视图的视图模型:
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>
我通过创建一个局部类修复了这个问题。
public partial class Item
{
public string AssignedToName { get; set; }
}
然后做一些接近Dimitri建议的事情…
model.ForEach(x => x.AssignedToName = GetUserFromGuid(x.AssignedTo));
然后显示…
<td>@item.AssignedToName</td>