小编Ste*_*rry的帖子

我可以在C#DocumentDb驱动程序中使用多态/继承吗?

我有一个自定义表单对象结构,我成功使用mongodb.

我一直在研究用DocumentDb替换Mongo的可能性.

我的类结构由不同类型的控件继承的基本控件组成.例如文本框控件,下拉控件

在mongo我使用鉴别器字段来存储实际类型,在c#DocumentDb驱动程序中我看不到找到相同的功能.

下面是mongo如何存储我的类结构的示例.

{
  "_t" : "TextboxControl",
  "LabelText" : "Location of incident",
  "IsRequired" : true,
  "_id" : "cbe059d9-b6a9-4de2-b63b-14d44b022e37"
}
Run Code Online (Sandbox Code Playgroud)

在documentdb中,结构看起来像

{
  "LabelText": "Location of incident",
  "IsRequired": true,
  "id": "cbe059d9-b6a9-4de2-b63b-14d44b022e37"
}
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,mongo版本具有一个"_t"属性来说明实际类型,然后在我读取数据时使用它来创建正确的类型.在documentdb版本中,它只是一个字段类型

.net c# polymorphism inheritance azure-cosmosdb

6
推荐指数
1
解决办法
823
查看次数

标签 统计

.net ×1

azure-cosmosdb ×1

c# ×1

inheritance ×1

polymorphism ×1