2011-12-22 84 views
0

有點難以解釋,但我會嘗試。通過Active Directory方法從ID獲取名稱?

AssignedTo是數據庫中的Guid。我需要將它與AD中的Guid列表進行比較,以獲得顯示的名稱。

我沒有問題做廣告的東西。這更多的是我如何做,並在視圖中顯示問題的名稱。

感謝您的幫助。

_

查看:(型號爲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; 
    } 
+0

對不起,我不知道這裏的問題是...這似乎填充和顯示很好。 – 2011-12-22 00:39:31

+0

問題是你不知道如何訪問活動目錄,或者你不知道如何比較guid? – 2011-12-22 00:41:59

+0

我不知道如何讓它顯示從AD將它比較的名字。我不能在普通模型中做到這一點,我嘗試使用這裏找到的方法,但它也沒有工作:http://www.headspring.com/2011/07/how-to-add-a-method- to-viewbag-in-asp-net-mvc – Ber53rker 2011-12-22 00:45:36

回答

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> 
+0

關閉,但它對我無效。 – Ber53rker 2011-12-22 13:50:27

0

我通過創建一個部分類固定的問題。

public partial class Item 
{ 
    public string AssignedToName { get; set; } 
} 

,然後做一些接近迪米特里什麼建議?

model.ForEach(x => x.AssignedToName = GetUserFromGuid(x.AssignedTo)); 

然後顯示它...

<td>@item.AssignedToName</td> 
相關問題