假设我在DynamoDB中已经有一个表,如何向PocoDynamo注册它
类型"SomeTable“指向prod和stg环境中的不同表。有没有办法用表名注册类型,或者用其他方式设置表名。
_pocoClient.PutItem<SomeTable>(item)有没有一种方法可以通过PocoDynamo使用现有的表?
注意:我使用terraform创建表格,不想使用PocoDynamo创建基础结构。
发布于 2020-03-04 16:24:14
在PocoDynamo中,您只需调用RegisterTable向PocoDynamo“注册”该表及其模式,即:
db.RegisterTable<SomeTable>();您可以通过以下方式以编程方式更改表名(在调用InitSchema()之前启动):
var metadata = DynamoMetadata.RegisterTable<SomeTable>();
metadata.Name = "DbTableName";在注册和配置表之后,调用InitSchema将只创建不存在的表:
db.InitSchema();如果希望DynamoDB表具有与.NET类型名称不同的名称,则可以使用Alias attribute,例如:
[Alias("DbTableName")]
public class SomeTable
{
//..
}注意: PocoDynamo是一个代码优先的类型化.NET客户端,这意味着它希望DynamoDB表完全按照它的创建方式创建,这对于映射到使用不同约定生成的现有表没有什么用处。
https://stackoverflow.com/questions/60521337
复制相似问题