要远程还是不远程?

时间:2011-02-16 14:47:36

标签: .net wcf orm remoting

要远程还是不远程?

如果我的术语不是100%正确,请原谅我。

在为小公司开发软件(所有Windows窗体应用程序)多年之后,我最近从我的摇滚中爬出来,发现了Remoting和/或WCF的概念。在我过去所做的所有项目中,我们总是让每台客户机都直接连接到数据库服务器。在阅读“Microsoft .Net:为企业构建应用程序”之后,最近我发现,通过WCF将业务对象公开为POCO对象可能更有意义,这样我们的客户端应用程序就不需要安装数据库客户端软件了在每台机器上(所有与它一起使用,就像每台机器上的另一个数据库用户许可证)。我们的客户端应用程序只需要连接到我们的WCF服务,该服务可能会将“服务层”作为我们业务对象的包装器公开。

我是疯了,还是分布式应用程序中常见的方法?

此外,什么ORM解决方案可以指向数据库并创建可以通过WCF公开的DAL和业务对象?

我也无法完全理解延迟加载在这种情况下的工作方式......

谢谢, 乔纳森

2 个答案:

答案 0 :(得分:2)

SOA正在消亡。使用MOA(面向消息的架构)的标准.Net Remoting是要走的路!

答案 1 :(得分:1)

我将把ORM问题留给其他人,并且只回答问题的一部分,询问这是否是一种常见方法。

这是一种常见的方法,称为SOA(面向服务的体系结构)。它有许多优点,也有陷阱。这是几年前的所有嗡嗡声,现在它仍然被普遍使用,但兴奋程度已经下降。

尽管如此,网上仍有大量资源可供研究。最大的问题是提前考虑,因为不同的人对如何实施SOA及其含义有不同的看法。此外,跨平台的承诺在实践中比人们原先希望的更难实现。 (例如,尝试从Java调用.NET Web服务。它可以完成,但是双方都需要完成工作才能使其工作。)如果您需要担心跨平台兼容性,那么研究“SOA”跨平台兼容性“在变得太深之前。你最好学习如何正确地做到这一点,以免你以后陷入困境,并且必须重新创建一系列原本适用于现在需要Java客户端的.NET客户端的服务(例如用于智能手机应用程序) )。

我们自己犯了这个错误,当我们开始开发需要Android / Blackberry客户端消费的服务时,最终不得不重新创建大量的Web服务。鉴于该行业在智能手机开发方面的趋势越来越明显,现在就开始使用它将为您节省大量工作。