你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
TableEntityAdapter<T>.WriteEntity(OperationContext) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
序列化 IDictionary<TKey,TValue> 映射到 EntityProperty 属性中的数据值 OriginalEntity 的属性名称。
public override System.Collections.Generic.IDictionary<string,Microsoft.Azure.Cosmos.Table.EntityProperty> WriteEntity(Microsoft.Azure.Cosmos.Table.OperationContext operationContext);
override this.WriteEntity : Microsoft.Azure.Cosmos.Table.OperationContext -> System.Collections.Generic.IDictionary<string, Microsoft.Azure.Cosmos.Table.EntityProperty>
Public Overrides Function WriteEntity (operationContext As OperationContext) As IDictionary(Of String, EntityProperty)
参数
- operationContext
- OperationContext
一个 OperationContext 对象,它一个表示当前操作的上下文。
返回
一个 IDictionary<TKey,TValue> 对象,它将字符串属性名称映射为通过序列化此表实体实例创建的 EntityProperty 类型化值。
注解
如果 OriginalEntity 是具有简单属性的简单 POCO 对象, (基元类型、string、byte[]、...) , WriteEntity(OperationContext) 方法将使用这些属性创建 EntityProperty 对象。
即 具有 B 和 C 属性的简单 POCO 对象 A 以及此结构 A-B> A-C> 将转换为键值对{“B”、EntityProperty (B) }、{“C”、EntityProperty (C) }。
如果 OriginalEntity 具有 (复杂属性,并且这些属性可能具有其自己的) 的复杂属性, WriteEntity(OperationContext) 则首先平展 OriginalEntity 方法。
即 具有 B 的简单属性和 C 和 D 的简单属性的对象 A,它们具有自己的 E 和 F 属性,并具有此结构 A-B>、A-C-E> 和 A-D-F>>>,将被平展为键值对:
{“B”, EntityProperty (B) }、{“C_E”、EntityProperty (E) } 和 {“D_F”, EntityProperty (F) }。
对于每个键值对:
1. 通过将从根 (A) 访问的属性的名称追加到用“_”分隔 (E 或 F) 结束节点属性组成。
2. 值是 EntityProperty 对象,由结束节点属性的值实例化。
所有键值对都将存储在返回的 IDictionary<TKey,TValue>中。
ReadEntity(IDictionary<String,EntityProperty>, OperationContext) 方法使用 IDictionary<TKey,TValue> 此方法返回的 将原始对象 (POCO 或复杂) 重构,并将其存储在 属性中 OriginalEntity 。
在 对象中OriginalEntity标记为 的属性IgnorePropertyAttribute将被忽略,并且此方法不会进行处理。