繁体   English   中英

Azure移动服务链接表

[英]Azure Mobile Services linked tables

我有3张桌子的应用程序

Items, Clients, Types

每个项目可以与一个客户和一种类型相关联

它最初是使用SQL Server CE存储的,现在我已将数据推送到Azure移动服务中。

我试图在用c#编写的新的Windows通用应用程序中重用此数据。

在Azure中,我创建了3个表itemtable clienttable typetable,在itemtable中,我有clienttable和typetable条目的ID列(item.clienttableid = clienttable.id)。

Azure移动服务后端设置为javascript,我选择它是因为我认为它跨平台比.net后端更兼容。

我希望能够从项目表中读取所有项目,并引用客户端的属性,并从项目中键入表(例如item.client.clientname)

有没有一种定义我的类的方法,这样当我从azure请求所有项目时,我也会获得关联的类型和客户端。

到目前为止,这就是我上课的方式

public class ItemTable
{
    public string Id { get; set; }

    [JsonProperty(PropertyName = "itemdate")]
    public DateTime ItemDate { get; set; }

    [JsonProperty(PropertyName = "itemamount")]
    public decimal ItemAmount { get; set; }

    [JsonProperty(PropertyName = "itemdescription")]
    public string ItemDescription { get; set; }

    [JsonProperty(PropertyName = "ItemClientID")]
    public ClientTable Client { get; set; }

    [JsonProperty(PropertyName = "ItemTypeID")]
    public TypeTable Type { get; set; }
}

public class ClientTable
{
    public string Id { get; set; }

    [JsonProperty(PropertyName = "clientname")]
    public string ClientName { get; set; }
}

public class TypeTable
{
    public string Id { get; set; }

    [JsonProperty(PropertyName = "typename")]
    public string TypeName { get; set; }
} 

我已经看到了这个http://blogs.msdn.com/b/carlosfigueira/archive/2013/08/23/complex-types-and-azure-mobile-services.aspx,但无法绕过如何适应它的想法我的情况

Azure移动服务后端设置为javascript,我选择它是因为我认为它跨平台比.net后端更兼容。

无论您使用后端的哪个时间,在每种情况下都将很容易,因为Azure移动服务团队为客户端应用程序创建了“ Azure移动服务SDK ”,您可以通过“管理Nuget程序包”进行安装。

到目前为止,这就是我上课的方式

我看到了模型,并且下次您可以从模型中显示类图,请在本文中学习类图:了解代码的简便方法 如果此模型用于客户端/.Net后端,则我认为它不是完全正确的,因为您说过

3个表项目,客户和类型。 每个项目可以与一个客户和一种类型相关联

在ItemTable类中,您需要具有类似的内容

  public ClientTable ClientId { get; set; } [ForeignKey("ClientId")] [JsonProperty(PropertyName = "ItemClientID")] public virtual ClientTable Client { get; set; } public string TypeTableId { get; set; } [ForeignKey("TypeTableId")] [JsonProperty(PropertyName = "ItemTypeID")] public virtual TypeTable TypeTable { get; set; } 

注意 :在客户端应用程序中,删除属性ForeignKey。

如果您有疑问,我建议您看一下

Azure移动服务示例-帮助开发人员使用Azure移动服务的示例和文章

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM