ReSharper的给出了一个" @"在一个lambda EX pression preFIX给一个变量名 [英] ReSharper gives an "@" prefix to a variable name in a lambda expression
本文介绍了ReSharper的给出了一个" @"在一个lambda EX pression preFIX给一个变量名的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
在使用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.
这篇关于ReSharper的给出了一个" @"在一个lambda EX pression preFIX给一个变量名的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文