本文整理汇总了C#中IPropertySymbol.GetBackingFieldIfAny方法的典型用法代码示例。如果您正苦于以下问题:C# IPropertySymbol.GetBackingFieldIfAny方法的具体用法?C# IPropertySymbol.GetBackingFieldIfAny怎么用?C# IPropertySymbol.GetBackingFieldIfAny使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IPropertySymbol
的用法示例。
在下文中一共展示了IPropertySymbol.GetBackingFieldIfAny方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: GetBackingField
private static IFieldSymbol GetBackingField(IPropertySymbol property)
{
var field = property.GetBackingFieldIfAny();
if (field == null)
{
return null;
}
// If the field is something can be referenced with the name it has, then just use
// it as the backing field we'll generate. This is the case in VB where the backing
// field can be referenced as is.
if (field.CanBeReferencedByName)
{
return field;
}
// Otherwise, generate a good name for the backing field we're generating. This is
// the case for C# where we have mangled names for the backing field and need something
// actually usable in code.
var uniqueName = NameGenerator.GenerateUniqueName(
property.Name.ToCamelCase(),
n => !property.ContainingType.GetMembers(n).Any());
return CodeGenerationSymbolFactory.CreateFieldSymbol(
attributes: null,
accessibility: field.DeclaredAccessibility,
modifiers: DeclarationModifiers.From(field),
type: field.Type,
name: uniqueName);
}
示例2: ContainsBackingField
private static bool ContainsBackingField(IPropertySymbol property)
=> property.GetBackingFieldIfAny() != null;