private static bool TryGetAnonymousTypeKey( MetadataReader reader, TypeDefinition def, ArrayBuilder <AnonymousTypeKeyField> builder) { foreach (var typeParameterHandle in def.GetGenericParameters()) { var typeParameter = reader.GetGenericParameter(typeParameterHandle); string fieldName; if (!GeneratedNames.TryParseAnonymousTypeParameterName(reader.GetString(typeParameter.Name), out fieldName)) { return(false); } builder.Add(AnonymousTypeKeyField.CreateField(fieldName)); } return(true); }
internal AnonymousTypeKey GetAnonymousTypeKey() { var properties = this.Properties.SelectAsArray(p => AnonymousTypeKeyField.CreateField(p.Name)); return(new AnonymousTypeKey(properties)); }