PocoDynamo - использовать существующую таблицу - PullRequest
1 голос
/ 04 марта 2020

Предположим, у меня уже есть таблица в DynamoDB, как мне зарегистрировать ее в PocoDynamo

Тип "SomeTable" указывает на разные таблицы в средах prod и stg. Есть ли способ зарегистрировать тип с именем таблицы или установить имя таблицы другим способом.

_pocoClient.PutItem<SomeTable>(item)

Есть ли способ использовать существующую таблицу с PocoDynamo?

Примечание: я создаю Таблицы, использующие terraform, не хотят использовать PocoDynamo для создания инфра.

1 Ответ

1 голос
/ 04 марта 2020

В PocoDynamo вам просто нужно вызвать RegisterTable, чтобы "зарегистрировать" таблицу и ее схему в PocoDynamo, то есть:

db.RegisterTable<SomeTable>();

Вы можете программно изменить имя таблицы ( При запуске перед вызовом InitSchema ()) путем регистрации таблицы с помощью:

var metadata = DynamoMetadata.RegisterTable<SomeTable>();
metadata.Name = "DbTableName";

После регистрации и настройки таблиц вызов InitSchema создаст только те таблицы, которые еще не существуют:

db.InitSchema();

Если вы хотите, чтобы таблица DynamoDB имела имя, отличное от. NET Имя типа, вы можете использовать атрибут Alias ​​, например:

[Alias("DbTableName")]
public class SomeTable
{
    //..
}

Примечание: PocoDynamo является клиентом, набранным вначале кода. NET. Это означает, что он ожидает, что таблицы DynamoDB будут созданы точно так же, как он будет их создавать, он бесполезен для сопоставления с существующими таблицами, созданными с различными соглашениями.

...