Azure Mobile + Json.NET:将类映射到具有不同名称的表

时间:2013-06-24 16:20:02

标签: azure windows-phone-8 json.net azure-mobile-services

我正在将Azure Mobile服务用于Windows Phone 8项目。

我正在尝试在我的数据库中存储复杂类型,因此使用json.net的JsonConverter。

我的数据类看起来像这样:

public class Data
{
    ...
    [JsonConverter(typeof(MyConverter))]
    public ComplexType SomeMember{get;set;}
    ...    
}

这似乎工作正常,但有一个问题: 我想将'Data'类映射到具有不同名称的数据库表,例如'data_something'

这可以通过使用

来实现
[DataContract(Name="data_something")]
public class Dat
{
    ...
}

但是Json.NET Annotations被忽略了。

有没有办法使用Json.NET并单独指定Table-Name? 或者,即使类名不相同,也许使用Azure Mobile获取正确表的另一种方法。 (我目前正在使用dataTable= MobileService.GetTable<Data>();

1 个答案:

答案 0 :(得分:2)

您可以使用[DataTable]属性:

[DataTable("data_something")]
public class Data
{
    [JsonConverter(typeof(MyConverter))]
    public ComplexType SomeMember { get; set; }
    // other members ommitted
}