【发布时间】:2008-09-15 15:56:44
【问题描述】:
我们正在审查我们在工作中的一些做法 - 我们现在正在研究的具体内容是使用基于 Flex 的客户端和 .NET Web 服务进行 Comms 的最佳方法。
我们的典型方法是首先根据需求对交互进行建模,模拟一些 XML 消息并对其进行健全性检查,将它们转换为 XSD,最后在每一端构建与 XML 进行序列化的类。
这一切正常,直到我们访问数据库,然后像连接表之类的东西开始破坏我们为简化客户端所做的所有工作。
我们已经尝试使用 LINQ to SQL 和其他 OR 映射器来解决这个问题,但它们都没有真正解决问题而不引入更严重的问题。
所以,真正的问题是:如果不将 RDBMS 视为简单的对象存储,是否有更好的方法来处理复杂的数据需求,而无需编写大量的转换代码?
我想我正在寻找的灵丹妙药是知道什么是 Join 表以及如何处理它,并且仍然允许我为 Flex 生成“不错的”序列化 XML 并保留强大的 .NET 类型。
如果它可以分析每种方法所需的 SQL,生成存储过程并使用它们,则可以加分。但这可能要求太多了:)
注意“加入表格”:
我们对此的定义是你有一个表,它有两个或多个外键作为它自己的主键。
例如:
Photos (PK PhotoID) <- PhotoTags (PK FK PhotoID, PK FK TagID) -> Tags (PK TagID)
当 Flex 客户端获取照片对象时,它可能还会获取所有标签的列表。 所以,这可能看起来像这样:
相反,我见过的 OR 工具给了我们:
【问题讨论】:
标签: .net apache-flex orm