[英]Index was out of range c# when checking against AD
在根據活動目錄檢查用戶時,我還會檢查其郵件屬性,嘗試將其存儲到會話變量中
但是,當用戶的AD帳戶沒有郵件地址時,我想在屏幕上為他們顯示該地址。
目前,索引超出范圍已捕獲異常
如何檢查此內容以便設置label屬性? 我顯然想避免將其設置在陷阱中。
try
{
var mail = adsSearchResult.Properties["mail"][0] ;
if (mail == null)
{
Label3.Text = "blablabla";
return;
}
else
{
Session["email"] = adsSearchResult.Properties["mail"][0].ToString().ToLower();
}
}
catch (Exception ex)
{
Response.Write(ex);
}
您只需添加空值和長度檢查,就應該實際存在這種可能性。
try {
if (adsSearchResult.Properties["mail"]!= null && adsSearchResult.Properties["mail"].Any()) {
var mail = adsSearchResult.Properties["mail"][0];
if (mail == null) {
Label3.Text = "blablabla";
return;
} else {
Session["email"] = adsSearchResult.Properties["mail"][0].ToString()
.ToLower();
}
}
} catch (Exception ex) {
Response.Write(ex);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.