- 让一个代码库支持多种平台的最佳方式是使用ASP.NET MVC 4 WebAPI(JSON或XML)作为REST Web服务。你可以找到更多关于它在这里:http://www.asp.net/web-api
也有一对夫妇准备使用的解析器的反序列化在客户端的JSON/XML数据转换成C#对象。
第二个问题似乎更关系到实体框架抽象背后的数据库架构。对于EF来说,组织数据的最好方法是使类别引用其他类别,而最后一类引用实际服务。你是否熟悉数据库关系,外键等概念?
编辑:
public class Category1{
public string Name { get; set; }
public virtual ICollection<Item> Items { get; set; }
}
public class Category2{
public string Name { get; set; }
public Category1 ParentCategory { get; set; }
public virtual ICollection<Item> Items { get; set; }
}
public class Item{
public string Name { get; set; }
public decimal Price { get; set; }
}
这是你会如何编写代码优先的EntityFramework对象的例子。 Category2有一个类型为Category1的父项,并且这两个类别都包含项目集合。 Pluralsight首先在EF代码上有一个excellent course,涵盖了所有的基础知识。
是的,但我希望英孚已经无需显式定义表结构在“代码优先”方式构成这种分级数据结构的一种特殊方式。 – Infin8Loop 2013-04-20 22:32:43
恐怕没有避免写某种数据结构定义的方式。我将编辑回复,以便为您举例说明如何使用类别解决问题。 – smisak 2013-04-23 21:28:58
我在考虑存储用户的选择作为文本BLOB列的XML文件。我相信Azure上的SQL Server支持在这些列的模式中搜索和过滤。不过,我从来没有做过。 – Infin8Loop 2013-04-26 15:53:43