我有一个包含两个表的数据库。它们具有外键关系(因此它们具有经典的主 - 细节结构)。
我想在浏览器中使用javascript(一个特定的Angular应用程序)调用ASP.NET MVC WebAPI来获取这两个表的全部数据。在JavaScript中,我希望使用适当的关系将数据重建为对象(以便详细对象具有对正确主数据的引用)
实施此最简洁的方法是什么?
一种选择是为主服务器调用REST API,遍历结果并进行REST调用以获取每个主服务器的详细记录。 这感觉有点蛮力,显然会导致很多REST调用。
我可以构建一个易于反序列化为JavaScript中正确的对象结构的WebAPI调用吗?这是适当的RESTful吗?
答案 0 :(得分:1)
我会避免为每个细节进行REST调用的繁琐实现。
如果您正在使用实体框架,那么获取一个块中的所有数据就像这样简单(如果您在实体框架数据库上下文中禁用了延迟加载,则需要包含):
public IEnumerable<Master> Get()
{
return _context.Masters.Include(m ->m.Details).ToList();
}
从angularjs中,您可以使用$ resource的查询方法轻松获取此内容。