Skip to main content

DYNDB007: Missing DynamoDbAttribute

FieldValue
CodeDYNDB007
SeverityError

Message​

Property '{0}' has DynamoDB key attributes but is missing [DynamoDbAttribute]

Description​

Properties with DynamoDB key attributes must also have [DynamoDbAttribute] to specify the attribute name. The source generator needs the DynamoDB attribute name to generate correct key handling code and map properties to DynamoDB item attributes.

Example​

The following code triggers this diagnostic:

[DynamoDbTable("Orders")]
public partial class Order
{
[PartitionKey]
public string Pk { get; set; } = string.Empty;

[SortKey]
[DynamoDbAttribute("sk")]
public string Sk { get; set; } = string.Empty;
}

Fix​

The corrected version:

[DynamoDbTable("Orders")]
public partial class Order
{
[PartitionKey]
[DynamoDbAttribute("pk")]
public string Pk { get; set; } = string.Empty;

[SortKey]
[DynamoDbAttribute("sk")]
public string Sk { get; set; } = string.Empty;
}