Skip to content

Commit cd6aebb

Browse files
committed
FIX: Use StringColumnModel to wrap EntityAttribute of type EntityName
1 parent 8e6e5b9 commit cd6aebb

1 file changed

Lines changed: 9 additions & 0 deletions

File tree

src/DataverseProxyGenerator.Core/Metadata/DataverseMetadataFetcher.cs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -220,6 +220,7 @@ private TableModel BuildTableModelFromMetadata(Dictionary<string, EntityMetadata
220220
DecimalAttributeMetadata decAttr => BuildDecimalColumn(decAttr),
221221
DoubleAttributeMetadata dblAttr => BuildDoubleColumn(dblAttr),
222222
MoneyAttributeMetadata moneyAttr => BuildMoneyColumn(moneyAttr),
223+
EnumAttributeMetadata enumAttribute when enumAttribute.AttributeType == AttributeTypeCode.EntityName => BuildStringColumn(enumAttribute),
223224
EnumAttributeMetadata enumAttr => BuildEnumColumn(enumAttr),
224225
LookupAttributeMetadata lookupAttr when lookupAttr.AttributeType == AttributeTypeCode.PartyList => BuildPartyListColumn(lookupAttr),
225226
LookupAttributeMetadata lookupAttr => BuildLookupColumn(lookupAttr),
@@ -284,6 +285,14 @@ private void AddPrimaryIdColumn(TableModel table, EntityMetadata entityMetadata)
284285
MaxLength = attr.MaxLength,
285286
};
286287

288+
private StringColumnModel BuildStringColumn(EnumAttributeMetadata attr) => new StringColumnModel
289+
{
290+
LogicalName = attr.LogicalName,
291+
SchemaName = attr.SchemaName,
292+
DisplayName = ApplyLabelMapping(attr.DisplayName?.UserLocalizedLabel?.Label ?? attr.LogicalName),
293+
Description = ApplyLabelMapping(attr.Description?.UserLocalizedLabel?.Label ?? string.Empty),
294+
};
295+
287296
private MemoColumnModel BuildMemoColumn(MemoAttributeMetadata attr) => new MemoColumnModel
288297
{
289298
LogicalName = attr.LogicalName,

0 commit comments

Comments
 (0)