用户名中的转义符
本文关键字:转义 用户 | 更新日期: 2023-09-27 17:58:57
我有一个用户名示例:
corp''myusername
所以如果我把它放在C#中,它想用"''"来升级它,所以它变成了:
corp''''myusername,但我需要成为corp''''myusername。有什么办法让它发挥作用吗?
非常感谢
使用verbatim string
string username = @"corp''myusername"
或
"''"
='
因此"''''"
=''
string username = "corp''''myusername"
尝试在字符串前面添加一个"@"符号,如下所示:
String.Format(@"corp'myusername")
or double up the "'" to escape the escape :)
使用逐字逐句的字符串文字。
http://msdn.microsoft.com/en-us/library/aa691090(v=vs.71).aspx
在文字前面加上"@"字符,然后就可以键入了。
我想您正试图将域与用户名分离,以便在站点中使用Windows身份验证时获得应用程序的用户名,是吗?我还遇到了这样的问题,有些机器会以大写返回值,有些则以小写返回值,所以要小心在源代码(或数据库)中强制使用大小写!
string windowsLogin = HttpContext.Current.User.Identity.Name;
int hasDomain = windowsLogin.IndexOf(@"'");
if (hasDomain > 0)
{
windowsLogin = windowsLogin.Remove(0, hasDomain + 1);
}
return windowsLogin.ToLower();