0

我正在运行以下查询,并成功地从 Alarms 表中获取所有记录:

List<Alarms> items = await App.MobileService.GetTable<Alarms>().OrderBy(item => item.AlarmDate).ToListAsync();

唯一的问题是,对于每一行,标识字段始终显示为空 (0)。这可能是映射问题吗?这是我想念的东西吗?

这是与云中的表匹配的类:

public class Alarms
{
    public int Id { get; set; }//problem must be here
    public int PatientId { get; set; }
    public string AlarmType { get; set; }
    public DateTime AlarmDate { get; set; }
    public string AlarmName { get; set; }
    public bool IsEnabled { get; set; }
}

此处的列名与云表中的列名匹配。我检查了三次。

4

3 回答 3

0

尝试将您的 ID 属性设置为“Id”。我相信命名约定要求它是大写的“I”和小写的“d”。

于 2013-04-10T17:18:10.700 回答
0

试试这个:

[DataContract(Name = "Alarms")]
public class Alarms
{
    [DataMember(Name = "id")]
    public int Id { get; set; }

    [DataMember(Name = "PatientId")]
    public int PatientId { get; set; }

    [DataMember(Name = "AlarmType")]
    public string AlarmType { get; set; }

    [DataMember(Name = "AlarmDate")]
    public DateTime AlarmDate { get; set; }

    [DataMember(Name = "AlarmName")]
    public string AlarmName { get; set; }

    [DataMember(Name = "IsEnabled")]
    public bool IsEnabled { get; set; }
}
于 2013-04-10T21:41:24.753 回答
0

azure 移动服务不支持 Guid id 或主键。但是如果一个表有除主键以外的 Guid 列,那么您可以在修复 azure mobile service sdk 后获取这些 guid。

我更新了 Azure 移动服务 SDK 以解决 GUID/唯一标识符的问题。代码在github上。您可以在 Commits https://github.com/vinodshinde/azure-mobile-services中看到我的更改

于 2013-04-11T21:30:12.463 回答