升级到Microsoft.WindowsAzure.Storage 4.0.0后,表实体没有被正确序列化
本文关键字:实体 序列化 Microsoft WindowsAzure Storage | 更新日期: 2023-09-27 18:03:16
我有一个c#。使用Azure表存储的。NET Web API项目。有些方法返回各种表实体的列表。在我升级到Microsoft.WindowsAzure.Storage 4.0.0之前,一切都很好。现在只返回基本属性(PartitionKey, RowKey,Timestamp和ETag),而忽略我自己的自定义属性,即不序列化。
我注意到在Microsoft.WindowsAzure.Storage 4.0.0的更改日志中有一个条目似乎与此有关:
- Tables: TableEntity可以通过isserializable接口序列化。
在响应这个我尝试装饰我的表实体类与[Serializable]和我的自定义属性与[DataMember]。一个例子:
[Serializable]
public class UserGroup : TableEntity
{
public UserGroup(String PartitionKey, String RowKey)
: base(PartitionKey, RowKey)
{
this.PartitionKey = PartitionKey;
this.RowKey = RowKey;
}
public UserGroup()
{
}
[DataMember]
public String Name { get; set; }
[DataMember]
public String ShortName { get; set; }
[DataMember]
public String LicenseGuid { get; set; }
}
仍然,只返回基本属性和我的自定义属性(Name, ShortName和LicenseGuid),而不包含在来自Web API方法的JSON响应中。
任何想法?(我现在回到Microsoft.WindowsAzure.Storage 3.2.1)
此问题已在我们的最新版本中修复,您可以从这里获取- http://www.nuget.org/packages/WindowsAzure.Storage