求 WinForm 三层架构方案实例
三 层 式 架 构 方 案
一、实时连接服务器,数据集中存储服务器上,全部客户端只有连接上服务器才可以调用服务器数据,要保证200人在线顺畅运行。
二、实现功能:
1、以MSSQL示例数据训Pubs里面的employee数据库为例实现添加、删除、修改、查询功能
2、客户端可以管理在线用户,可以查询到用户ID、用户名、计算机IP、计算机名、登录时间及离开时间,可以踢掉某个在线用户
3、服务器有固定IP的可以用,没有固定IP的用花生壳解析的也可以使用。
三、服务器要求安全认证。
长期以来很多论坛的答案都是WebForm的,希望这里只讨论WinForm架构。过一会来收贴...,请各位大力支持!
------解决方案--------------------这个.......多少钱啊?
------解决方案--------------------winForm实现半点问题都没有:
1,完全以WebServier方式实现数据增删改
2,UDP高效
3,免费都可以搞定动态IP解析,推荐(3322.org,comexe.cn)
------解决方案--------------------服务器安全问题,主要体现在WebService的安全管理上!
参考:
http://searchwebservices.techtarget.com.cn/wsdevelop/wsaq/
------解决方案--------------------winform+webservice没有问题,可以做的
------解决方案--------------------WinForm?
连接远程服务器,只有WebService或者Socket连接了
前者灵活,不安全,不稳定
后者安全稳定效率高
想不通楼主为什么不用B/S?
------解决方案--------------------一、实时连接服务器,数据集中存储服务器上,全部客户端只有连接上服务器才可以调用服务器数据,要保证200人在线顺畅运行。
//按照你的说法 客户端应该连接应用程序服务器而不是数据库服务器
电脑A做数据库服务器
电脑B做应用程序服务器 这里可以写一个DataAccess进行数据操作
然后电脑B上可以发布WebService ,这个项目可以对DataAccess做一个引用(实际就是一个程序)
电脑B逻辑上是两层,数据库和应用程序服务器分开在两台机器上可以提高性能
1.增加删除修改查询等功能 一般的数据库操作而已
2.客户端可以管理在线用户 这个在客户端登录的时候让客户端给WebService发相应的信息 记录下来就行
可以踢掉某个在线用户 可以加一个form验证,直接修改客户端的form验证为不通过,客户端再次连接就会失败.
三、服务器要求安全认证
用Form验证即可
------解决方案--------------------SQL Server2005里面的报表服务是web方式的,在WinForm里面显示一个WebBrowser就OK
------解决方案--------------------如果使用WebService的话,你的应用程序服务器是无法主动给客户端发消息的,只能等待客户端的请求(特殊情况不算,只讨论一般情况下的处理方式)
我能想到的就是客户端每隔几分钟给服务器发个消息(意思就是:我还连着呐),服务器在指定时间段没没收到客户端消息,就认为该客户端已经断开连接.
客户端如果还有更多状态,写消息里就行