·想问问,“Community Server”是表示什么意思,有参考资料参考参考吗?还有“MS的SmartClient示例程序IssueVision ”是什么意思呢?到哪里下载?谢谢大家帮忙·

解决方案 »

  1.   

    ·想问问,“Community Server”是表示什么意思,有参考资料参考参考吗?还有“MS的SmartClient示例程序IssueVision ”是什么意思呢?到哪里下载?谢谢大家帮忙·
      

  2.   

    http://www.china-pub.com/computers/common/info.asp?id=28300《C#企业级开发案例精解》
    IssueVision和TasVision系统是微软公司提供的两个智能客户端的经典范例,其中包括整个应用程序和源代码。从IssueVision和TasVision范例中,可以很清楚地了解整个智能客户端的运行过程、实现原理和软件架构。IssueVision和TasVision范例功能实用、代码编写规范,但是它又非常复杂,在没有指导的情况下,初学者很难将其读懂并且应用到实际当中。本书从应用的角度出发,按照功能模块对IssueVision和TasVision范例做了详尽的解析,并讲述出了其中的设计思想和开发技巧。本书的范例采用的编程语言是C#。.
    本书从实用的角度出发,结合IssueVision和TasVision系统范例讲解智能客户端的开发技术,适合正在从事和希望学习智能客户端开发的人员阅读。...
      

  3.   

    智能客户端 (n) 定义:智能客户端是易于部署和管理的客户端应用程序,它们通过统筹使用本地资源和到分布式数据资源的智能连接,从而为您提供适应的、快速响应的和丰富的交互式体验。 这是MS的定义。从上面我们读到
    1、智能客户端,它是一个客户端应用程序
    2、它可以访问客户机本地资源
    3、他的交互性很强。那么我们可以看出,它可和普通的IE客户端的区别,它是一个客户端的应用程序,IE客户端不是,这是最关键的一个区别。本地资源和用户体验
    MS的解释,摘录最关键的句子
    智能客户端解决方案通过充分利用 Microsoft Windows 平台提供的所有功能,为最终用户提供高保真体验。例如,Word、Excel、MS Money、甚至 PC 游戏(例如,Half-Life 2)都是广为人知的智能客户端应用程序。与诸如 Amazon.Com 或 eBay.com 等基于浏览器的应用程序不同,智能客户端应用程序依赖于 PC、便携式电脑、Tablet PC 或智能设备。 很显然所谓的智能客户端就是一个应用程序罢了。例如,word,这是一个应用程序。那么,智能客户端和普通应用程序的差别是什么?请看微软的定义
    连接
    在企业或 Internet 范围内,智能客户端应用程序能够轻松地与系统连接并与之进行数据交换。Web 服务使智能客户端解决方案能够利用行业标准协议(例如,XML、HTTP 和 SOAP)来与任何类型的远程系统交换信息。较之于以前的任何技术,Visual Studio、.NET Framework 和 .NET Compact Framework 让 Web 服务的使用更为容易。Microsoft? SQL Server、Microsoft Message Queuing (MSMQ) 和 BizTalk Server 等技术还提供了在系统之间同步和交换信息的易于使用的方式。也就是说,智能客户端是一个网络应用程序的一部分。不过它可以使用网际通讯协议和服务器通讯或者和其他智能客户端交换数据。那么,为什么是智能的?
    看微软的定义
    具备离线的能力
    也就是说,这个客户端可以在没有网络的情况下工作,并且可以在连接网络后批量的刷新数据。说简单一点,就是,能够自动的保持客户端数据和服务器数据的一致性。同时,注意,智能客户端是拥有本地数据的,或者是本地的,或者是服务器数据的副本。此外
    智能部署和更新
    智能客户端可以自动更新,如果你玩过网络游戏我就不多说了,但是,微软为实现自动更新提供了一些解决方案和实现工具,当然如果你要从头开始做,也不是什么难事。那么总结一下:智能客户端是
    一个应用程序,它必须是网络应用的一部分,它必须能够自动的保持分布数据的一致性,它必须能够自动更新。我们可以说一下,为什么需要智能客户端。
    主要原因是,HTML的交互性问题,虽然可以使用脚本进行用户交互编程,但是,总所周知,因为安全性的限制,本地资源是IE客户端所不能任意使用的,此外,因为,服务器端程序和客户端程序的纠缠(这个原因,应该说是HTML的先天问题,因为设计之初,HTML是用来交换文本的,而不是用来实现一个客户端程序的)让设计web应用程序很怪异。那么,我们用了很久的三层结构的客户端为什么不行?非要智能客户端?不是不行,而是,微软把我们以往设计三层结构客户端好的经验都规范了,并且提供了更加快速实现的方案。比如,Delphi的midas三层结构,Delphi的ClientDataSet组件是具有很强的智能的,用它就能保持客户端本地缓存以及分布式数据的一致性。但是,Borland没有能力更进一步,这个任务当然交给了微软了(遗憾啊遗憾,多好的midas结构)。
      

  4.   

    然后,昨天看了一下微软的实现智能客户端的方式。微软方案
    1、智能客户端是一个.net上的托管应用程序
    2、智能客户端是通过IIS发布的,IIS5以上版本以及最新的apache可以实现一个HTTP的子协议,以提供EXE文件的下载。
    3、IE5以上的浏览器可以识别这样的exe并且自动创建一个独立的权限受限(一个特殊的用户启动的)的进程来运行这个托管代码集。
    4、客户端可以进行配置,以便获得合理的权限。
    5、IE可以通过exe文件的版本、更新日期等等自动下载更新最新版本。如果是多个文件构成的,我的理解是客户端自己负责其他文件的最新副本,我想客户端仍然可以通过IE下载其他部分,由IE决定利用缓存还是下载。
    6、客户端的权限受到严格限制,通常只能访问特定的文件夹,当然操作打印机是没有问题的。客户端也可以进行适当的配置,当然首先必须是得到信任的网站才能下载运行智能客户端。
    7、智能客户端的代码的安全性和.net中程序集一致,代码是可以签名防止篡改和附带其他代码的(比如受到病毒感染)。
    8、智能客户端的网络访问可以通过WebService。好像微软非常推荐这种方式,不知道是不是唯一的方式,否则容易带来安全问题。(如果受到限制,那么对于QQ这样的即时通讯软件是一个问题,因为他们往往需要通过NAT通道来实现直接连接传递文件,否则必须通过服务器转发,不过服务器转发是好的方式,安全性大大提高)
    9、我们需要做的就是很简单,写一个.net的应用程序然后用IIS把它发布出去。这就是一个智能客户端了,更新都交给IIS和IE了。当然还需要配置一下客户端好像还要发布配置文件(还在研究中)。
    10、客户端桌面可以建立一个URL的快捷方式指向我们的应用程序的网络地址,然后,用户就可以很傻瓜的使用我们的应用程序。这对棋牌类的网络游戏是一个大好消息啊。实现起来更加方便了。
      

  5.   

    还有就是一些细枝末节的技术问题了。实现离线处理能力,就要保证用户离线登录,这样会带来安全问题,需要程序员用自己的办法解决。当然你也可以不实现。这无关紧要,对于网络密集的应用来说,离线处理能力是鸡肋,比如一个网络游戏,根本没必要实现。当然,要防止偶尔的断线,或者是应付网络不稳定还是需要下点功夫的,如果使用WebService当然不怕不稳定。还有就是客户端配置问题了,这个好像很复杂啊。