日期:2014-05-20  浏览次数:20969 次

同时采用BS和CS构建的软件系统如何实现?
有没有同时采用BS和CS构建的软件系统。如果采用这种架构,它们之间通过什么可以通信?它们如何部署?其中的资源(包含图片,文件等)能共享吗?
软件架构?BS、CS部署

------解决方案--------------------
经常有这种bs和cs结合的项目啊
可以webservice通讯也可wcf通讯
cs的server端和bs的资源共享
------解决方案--------------------
cs你指单纯的客户端吗?
一般也有服务端吧,服务端可以和bs资源共享,如果只有客户端,那就没的共享了
------解决方案--------------------
webservice可以
------解决方案--------------------
10万个为什么系列
------解决方案--------------------
最简单的就是用数据库了。
------解决方案--------------------
引用:
cs的server端和bs的资源共享具体点吗?CS的资源文件不是在本地的吗?而BS资源文件不是在Web服务器吗?这些怎么共享?


什么资源?不论什么,都是数据而已。而数据是被通讯程序所运送的。

在服务器端,可能是一个服务系统,也可能是两个应用系统。

或者所谓asp.net程序(网站)在它的服务器端访问另一个真正的服务。或者所谓桌面的客户端使用http方式访问asp.net的ashx或者aspx或者webservice。
------解决方案--------------------
其实比较专业的设计可能是仅仅设计一个服务器就够了。比如说是这样的:

你可以开发一个windows service服务程序,你的各种客户端应用——不管是wpf的IM、winform的报表软件、asp.net的人员管理软件、silverlight的GIS软件、Android的业务工单处理软件,等等——全都访问这个服务。

这个windows service服务上实现了HttpListener服务(而不仅仅是TcpListener、UdpClient之类的)。

而你的asp.net网站在收到一个aspx页面访问请求时,请求这个windows service来获得此页面初始数据,然后将数据以<div><span><ul><li><a>+javascript的形式下载的浏览器端。然后浏览器收到这个div+javascript的网页,它在客户端快速地渲染显示这个页面。然后客户交互操作时就使用ajax直接跟这个windows service上的HttpListner通讯,而完全没有必要跟asp.net通讯。仅仅当客户端重定向时才需要访问asp.net。

实际上我们完全可以扔掉asp.net而使用仍然支持b/s。就好比如说你买一个60块钱的路由器,你会发现直接放问它的ip就可以登录一个管理配置它用的web程序。我们完全可以在windows service里边通过HttpListener来提供web网页,而根本用不着asp.net也根本用不着部署iis。
------解决方案--------------------
应用Web Service来实现啊   我试验过