Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/apache-flex/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Flex、.NET和DBMS寻找更好的端到端通信_.net_Apache Flex_Orm - Fatal编程技术网

使用Flex、.NET和DBMS寻找更好的端到端通信

使用Flex、.NET和DBMS寻找更好的端到端通信,.net,apache-flex,orm,.net,Apache Flex,Orm,我们正在回顾我们在工作中的一些实践——我们现在正在研究的具体问题是与基于Flex的客户端和.NET web服务进行通信的最佳方法 我们的典型方法是首先根据需求对交互进行建模,模拟一些XML消息并对其进行健全性检查,将它们转换为XSD,最后在每一端构建与XML序列化的类 这可以正常工作,直到我们访问数据库,然后连接表之类的事情开始破坏我们简化客户端所做的所有工作 我们已经尝试使用LINQtoSQL和其他OR映射器来解决这个问题,但是没有一个能够真正解决这个问题,而不引入更严重的问题 因此,真正的问

我们正在回顾我们在工作中的一些实践——我们现在正在研究的具体问题是与基于Flex的客户端和.NET web服务进行通信的最佳方法

我们的典型方法是首先根据需求对交互进行建模,模拟一些XML消息并对其进行健全性检查,将它们转换为XSD,最后在每一端构建与XML序列化的类

这可以正常工作,直到我们访问数据库,然后连接表之类的事情开始破坏我们简化客户端所做的所有工作

我们已经尝试使用LINQtoSQL和其他OR映射器来解决这个问题,但是没有一个能够真正解决这个问题,而不引入更严重的问题

因此,真正的问题是:如果不将RDBMS视为简单的对象存储,有没有更好的方法来处理复杂的数据需求而不编写大量转换代码?

我想我要寻找的魔弹是知道什么是联接表以及如何处理它的东西,它仍然允许我为Flex生成“漂亮”的序列化XML并保留强大的.NET类型

如果它能够分析每个方法所需的SQL,生成存储过程并使用它们,那么就有了额外的好处。但这可能要求太高了:)

注意重新“连接表”:

我们对它的定义是,一个表有两个或多个外键作为它自己的主键

例如:

当Flex客户端获得一个Photo对象时,它还可能获得所有标记的列表。 所以,看起来可能是这样的:

<photo id="3"> <tags> <tag name="park" /> <tag name="sydney" /> </tags> </photo> 取而代之的是,我所看到的或工具为我们提供了:

<photo id="3"> <phototags> <phototag> <tag name="park" /> </phototag> <phototag> <tag name="sydney" /> </phototag> </phototags> </photo>
虽然我确信还有其他方法可以解决您的问题,但您希望通过web服务与.net进行通信的具体原因是什么? 一个非常干净的解决方案是使用WebOrb()之类的东西 他们有社区服务和商业服务,可以很优雅地处理您描述的问题


-mw

嘿,谢谢你的回复。我想提到WebOrb——我们已经看过了,但它并没有解决我们在向客户机隐藏数据库内部的问题。在我的例子中,我们仍然有Photo.PhotoTags[].Tag.Tag或类似的。谢谢:) <photo id="3"> <phototags> <phototag> <tag name="park" /> </phototag> <phototag> <tag name="sydney" /> </phototag> </phototags> </photo>