こんにちは、xaml と xdocument の操作について質問があります。
私のアプリケーションへ:
DropDownList コントロールがあり、それを xml ファイルで埋めたいのですが、ユーザーが特別な値しか見ることができないようにしたいのです。つまり、彼は Active Directory グループに属している必要があります。したがって、コードにxmlをロードし、これをフィルター値で更新して、ドロップダウンにロードしたいと思います。
ここに私のxml:
<plants>
<plant id="DB" display=".testDB.." group="NPS_DB" />
<plant id="EL" display=".testEL.." group="NPS_EL" />
<plant id="IN" display="..testIN." group="NPS_IN" />
<plant id="SB" display=".testSB.." group="NPS_SB" />
<plant id="BL" display=".testBL.." group="NPS_BL" />
<plant id="LS" display="..testLS.." group="NPS_LS" />
</plants>
ここに私のコード:
ArrayList ActiveUserList = MyClass.GetGroupmemberList(DOMAIN, Username);
XDocument x = XDocument.Load(Server.MapPath(@"~\App_Data\location.xml"));
int index = ActiveUserList.Count;
ArrayList DropDownList = new ArrayList();
for (int i = 0; i < index; i++)
{
IEnumerable<XElement> att = from el in x.Descendants("plant")
where (string)el.Attribute("group") == ActiveUserList[i].ToString()
select el;
//????
}
見つかった Xelements で xml を更新し、これを使用して新しい xml を作成し、ドロップダウン リストにロードする方法。
ユーザー名がグループ nps_db にあり、nps_el が ths のみを表示する場合:
<plants>
<plant id="DB" display=".testDB.." group="NPS_DB" />
<plant id="EL" display=".testEL.." group="NPS_EL" />
</plants>