У меня есть модель, которая имеет свойство enum, и мне нужно сохранить эту модель с этим свойством в DynamoDb, но как целое, а не string (поведение по умолчанию в ServiceStack.Aws).Как вставить enum as int в DynamoDb с ServiceStack.Aws
В пространстве имен ServiceStack.DataAnnotations имеется атрибут «EnumAsInt». Я помещаю этот атрибут в свою модель, но не работаю. В настоящее время я получаю сообщение об ошибке, которое говорит, что мой индекс ожидает целое число, но я отправил строковое значение.
Моя модель выглядит следующим образом
[References(typeof(PersonContactIndex))]
[Alias("PersonContact")]
public class PersonContact
{
[AutoIncrement]
public int PersonContactId { get; set; }
public int PersonId { get; set; }
[EnumAsInt]
public PersonContactType ContactType { get; set; }
public string Value { get; set; }
public bool IsDefault { get; set; }
}
Моего индекс выглядит как этот
public class PersonContactIndex: IGlobalIndex<PersonContact>
{
[HashKey]
public int PersonId { get; set; }
[RangeKey]
[EnumAsInt]
public PersonContactType ContactType { get; set; }
public int PersonContactId { get; set; }
}
Другим способ может быть настраивает пользовательский конвертер, который AWSSDK поддержки, но я не знаю, если ServiceStack имеет логику для вызова этого конвертера перед отправкой запроса в DynamoDB
Итак, как я могу сохранить свои перечисления как int в DynamoDb с ServiceStack.Aws?
Благодаря