Feb 28

用C#读取LDAP记录 不指定

kcao , 17:05 , 技术 , 评论(0) , 引用(0) , 阅读(6529) , Via 本站原创

 

从LDAP读取记录,把edmworkstation和displayname这2项内容取出,放在一个dictionary中以备用.edmworkstation是用户的登记计算机名,可能含有多条记录.如果读取失败,则在dictionary中放一个"NotValid=yes"项目.

C# Code Copy Code To Clipboard
  1. private void GetLDAPInfo()   
  2.         {   
  3.             try  
  4.             {   
  5.                 DirectoryEntry entry = new DirectoryEntry("LDAP://ldap.xxx.com/o=xxx,c=an");   
  6.                 entry.AuthenticationType = AuthenticationTypes.SecureSocketsLayer;   
  7.                 DirectorySearcher searcher = new DirectorySearcher(entry);   
  8.                 searcher.Filter = "(alias=" + getLoginName() + ')';   
  9.                 SearchResult result = searcher.FindOne();   
  10.                 if (result == null)   
  11.                 {   
  12.                     LDAPInfo.Add("NotValid""yes");   
  13.                     errnum = -40;   
  14.                     return;   
  15.                 }   
  16.   
  17.                 string path = result.Path;   
  18.                 path = path.Substring(path.LastIndexOf("/") + 1);   
  19.                 ResultPropertyCollection p = result.Properties;    
  20.   
  21.                 string v = "";                   
  22.                 if (p.Contains("edmworkstation"))   
  23.                 {   
  24.                     foreach (var a in p["edmworkstation"])   
  25.                     {   
  26.                         v += a.ToString().Substring(0, a.ToString().IndexOf('/')) + ";";   
  27.                     }   
  28.                     LDAPInfo.Add("pcnames", v);   
  29.                 }   
  30.                 else  
  31.                 {   
  32.                     LDAPInfo.Add("NotValid""yes");   
  33.                 }                   
  34.   
  35.                 if (p.Contains("displayName"))   
  36.                 {   
  37.                     v = "";   
  38.                     foreach (var a in p["displayName"])   
  39.                     {   
  40.                         v += a.ToString();   
  41.                     }   
  42.                     LDAPInfo.Add("displayname",v);      
  43.                 }   
  44.             }   
  45.             catch  
  46.             {   
  47.                 LDAPInfo.Add("NotValid""yes");   
  48.                 errnum = -40;   
  49.                 return;   
  50.             }   
  51.         }  

 

Tags: , ,
Feb 25

歌剧--魔笛 不指定

kcao , 23:03 , 杂谈 , 评论(0) , 引用(0) , 阅读(1386) , Via 本站原创

(快乐的捕鸟人)--Der Vogelfänger bin ich ja

 

 

http://www.youtube.com/watch?v=n8zDNRsryoE

Feb 25

有一个字符串,保存着一系列的机器名,要比较某个机器名是不是在这个字符串中, 此字符串以";"分隔,但是分号前后有可能会有空格. 先用SPLIT函数分割字符串,再用Array.IndexOf进行查找比较.

C# Code Copy Code To Clipboard
  1. string source = "a; ab; abc ; bc ;b";   
  2. string unit = "bc";   
  3. string[] sarray = source.ToLower().Split(new char[] {';',' '}, StringSplitOptions.RemoveEmptyEntries);   
  4. return (Array.IndexOf<string>(sarray, unit.ToLower()) >= 0);  

 

Tags: , , ,
分页: 1/1 第一页 1 最后页 [ 显示模式: 摘要 | 列表 ]