2010-01-08 66 views
0

我有此下面的代碼,這將取的loggedIn用戶ID的IndexOf功能

System.Security.Principal.WindowsPrincipal p = System.Threading.Thread.CurrentPrincipal as System.Security.Principal.WindowsPrincipal; 
     //networkID=User. 
     string strName = p.Identity.Name; 
     int start; 
     start = strName.IndexOf("\") + 1 ; 

    strName = strName.Substring(start, strName.Length - start); 

但開始= strName.IndexOf( 「\」)+ 1;拋出錯誤說不斷換行換行。我登錄的用戶名是domainName \ username,我只想使用用戶名。請幫助

回答

6

嘗試IndexOf(@"\")IndexOf("\\")

5

\是一個轉義字符 - 您必須使用"\\"@"\"才能使其工作。

0

你的反斜線轉義你的最後報價。使用雙反斜槓來避免反斜槓。

start = strName.IndexOf("\\") + 1 ; 
0

\是一個轉義字符。您也需要與其他\逃跑或使用逐字字符串:

start = strName.IndexOf("\\") + 1 ; 

或者:

start = strName.IndexOf(@"\") + 1 ;