使用 WCF RIA 服务,其中数据源不是经典(关系)数据库
我想(必须)编写一个基于 Silverlight 和(或)ASP.NET 的 Web 应用程序,在后端使用 SAP(换句话说,数据源不是经典数据库)。使用Silverlight和ASP.NET是前提。 是否可以使用数据源为 SAP RFC 的 WCF RIA 服务(和 Silverlight)?这有道理吗?如果是,如何简要描述模式/架构?或者我应该考虑其他架构(使用普通的WCF 服务、WCF 数据服务...)?
I want (have) to write a Silverlight and (or) ASP.NET based webapplication with SAP in the backend (in other words, the datasource is no classical database) . The usage of Silverlight and ASP.NET is a precondition.
Is it possible to use the WCF RIA Services (and Silverlight) where the data-source are RFCs from SAP ? Makes this sense ? If yes, how the pattern/architecture could be shortly described ? Or should I take other architectures into considerations (usage of plain WCF services, WCF data services,...) ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您面临的架构问题是 SAP 不是数据源。 SAP是业务逻辑层。试图强迫它仅仅充当数据源可能会在以后引起问题。
所以我的建议是使用简单的 WCF 服务。或者,如果您使用的是旧版本的 sap,请热切等待新的 .net 连接器。在.net或silverlight中做表示层。并将所有逻辑保留在 SAP 中。
实际上有两种可能的情况,您尚未指定您的应用程序将使用其中哪一种。
1. 使用标准 SAP 应用程序。
2. 使用自定义(Z) SAP 应用程序。
在第一个选项中,很明显 sap 正在执行逻辑。否则会使您的应用程序容易受到后端升级的影响。
在第二个选项中,您可以公开 CRUD 之类的接口。并尝试将 sap 伪装成数据层。我认为这是错误的。整个架构没有意义。但如果它强加给你,不要试图“拯救”它,因为这只会使情况变得更糟。在sap中做逻辑,在.net中做演示。我认为重新实现SQL并不能算是一个优雅的架构。
The architectural problem that you are facing, is that SAP is not a data-source. SAP is the business logic layer. Trying to force it to act as a mere data-source will probably cause problems down the road.
So my advice is to use simple WCF services. Or, if you are using old version of sap, to wait eagerly to the new .net connector. Do the presentation layer in .net or silverlight. And keep all the logic in sap.
There are actually two possible scenarios that you haven't specified which of them your application will be using.
1. Using a standard sap application.
2. Using a custom(Z) sap application.
In the first option, its clear that sap is doing the logic. Doing it otherwise will make your application vulnerable to upgrades in the back-end.
In the second option, you can expose CRUD like interface. And try to disguise sap as a data-layer. I think that it will be wrong. This entire architecture doesn't make sense. But if its forced on you, don't try to "save" it, because it will just make it worse. Do the logic in sap, and the presentation in .net. I think that re-implementing SQL can't be considered an elegant architecture.
我可能完全偏离了轨道,因为我来自 SAP 方面,对 ASP 几乎一无所知,但是你不能使用 Web 服务作为数据源吗?任何 SAP RFC 功能都可以更改为此类 Web 服务。
考虑到,
纪尧姆
i may be completly off-track since i'm from the SAP side of the fence, and know nearly nothing about asp, but can't you use a web-service as a datasource ? any SAP RFC function can be changed into such a webservice.
regard,
Guillaume