由网友(寡人有糖)分享简介:在使用ReSharper的它会自动添加一个 @ ,为什么?公共静态字符串RemoveDiacritics(此字符串输入){如果(string.IsNullOrEmpty(输入))返回输入;VAR规格化= input.Normalize(NormalizationForm.FormD);VAR的StringBuilde...
在使用ReSharper的它会自动添加一个 @
,为什么?
公共静态字符串RemoveDiacritics(此字符串输入)
{
如果(string.IsNullOrEmpty(输入))返回输入;
VAR规格化= input.Normalize(NormalizationForm.FormD);
VAR的StringBuilder =新的StringBuilder();
在normalizedString.Select(价值=&GT的foreach(VAR值;
新{值,UNI codeCategory = CharUni codeInfo.GetUni codeCategory(值)})
。凡(@t =>!@ t.uni codeCategory =统一codeCategory.NonSpacingMark)
。选择(@t => @ t.value))stringBuilder.Append(值);
返程(stringBuilder.ToString()标准化(NormalizationForm.FormC)。);
}
解决方案
@符号,您可以使用保留关键字的变量名。如 @class
。我认为ReSharper的这是否是安全的。
在这种情况下,是不需要的,它不产生任何效果。
When using ReSharper it automatically adds an @
, why?
public static string RemoveDiacritics(this string input)
{
if (string.IsNullOrEmpty(input)) return input;
var normalizedString = input.Normalize(NormalizationForm.FormD);
var stringBuilder = new StringBuilder();
foreach (var value in normalizedString.Select(value =>
new {value, unicodeCategory = CharUnicodeInfo.GetUnicodeCategory(value)})
.Where(@t => @t.unicodeCategory != UnicodeCategory.NonSpacingMark)
.Select(@t => @t.value)) stringBuilder.Append(value);
return (stringBuilder.ToString().Normalize(NormalizationForm.FormC));
}
解决方案
The @ symbol allows you to use a reserved keyword for a variable name. Such as @class
. I'd assume Resharper does this to be safe.
In this case, it is not needed and it doesn't have any effect.
相关推荐
最新文章