




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、网上用来写三层结构和Wcf的实例不多, 本人最近因为工作需要,简单学习了三层结构和Wcf服务,这里用 (vs 2010)作一个简单实例,希望能帮助一些需要的人快速入门。网上关于三层结构和Wcf的解释都太专业和高大上,这往往会初学者带来困难。这里用一些个人的理解作一些粗浅说明,各位配合下面的例子写出自己的代码后,再返回去看他们的专业定义,也许会更容易理解些。所谓三层结构,按我的理解,就是把一个软件的开发,分成三块,一块专门作界面,一块专门作业务流程,一块专门作数据操作。这在团队开发中非常有用,可以分工合作,一人作一部分,将来出错也好查错,维护起来也方便,特别是系统庞大了以后,作用更明显。当然,如
2、果是个人作个小软件,个人觉得什么界面、业务、数据还是放在一起吧,分层浪费的时间更多。所谓的Wcf,我的简单理解就是为了实现三层结构中的数据层。就是作一个数据操作的DLL,然后在网上发布这个DLL,别人调用这个DLL中的函数来实现功能,而不用管DLL是怎么写的。那为什么不直接在自己的代码中写呢,而是要发布Dll到网上呢?答案是为了数据安全。比如你要调用sql server中的数据库,客户端中如果使用了连接的用户名和密码,别人可以简简单单挂个小程序就把你的用户名、密码就截获了;而使用了wcf,数据库连接语句都是在服务器上进行,客户端只获得了返回的结果,显然就安全多了(平时我们浏览网页也是这种模式)
3、,还有一个好处就是如果这个数据的逻辑发生变化,更新服务器的DLL文件就好,不需要再更新客户端了,比如某个算法,由原来的X*0.2调整为X*0.3,这个时候你也要客户端和你一起更新?这显然不经济。当然如果你是作单机版的软件,在本机上运行的,就没有必要学wcf了。下面会讲到Wcf的建立和在IIS 5.1上的发布,大家慢慢往下看。以下的图例就不再作详细的文字描述了。1、 打开vs 2010,新建一个解决方案,名字为test,存在e:mytest下二、左上角菜单->文件->添加->新建项目->windows->windows窗体应用程序,名称:界面层三、左上角菜单->
4、;文件->添加->新建项目->windows->类库,名称:业务层四、左上角菜单->文件->添加->新建项目->Wcf->Wcf服务库,名称:数据层。5、 点击数据层。点击项目菜单->数据层属性->将根命名空间改为dal,原因是wcf发布到iis以后,不认中文。6、 改名,将界面层的form1.vb改为Ui.vb,业务层的class1.vb改名为Bll.vb,数据层的IService1.vb改为I_dal.vb,Service1.vb改为Dal.vb,三层结构基本建立完成。为了实现三层结构,我们按数据层->业务层->
5、界面层的顺序往里面写代码。其中的数据层用到了wcf,篇幅比较大,仔细看好。七、设置IIS,用于发布Wcf(1) 打开IIS,选择【默认网站】-属性】-【主目录】-【配置】,看有没有.svc选项,没有得重装.net framework (2)安装ServiceModell 进入C:WINDOWSMicrosoft.NETFrameworkv3.0Windows Communication Foundationl ServiceModelReg.exe -r (3)ASPNET账户权限分配l aspnet_regiis.exe ga ASPNET(注意:1、上述命令都是在CMD下执行的;2、上述目
6、录路径因系统安装的.net而定,如果没有对应的目录,可以直接搜索C:WINDOWSMicrosoft.NETFramework目录,找到ServiceModelReg.exe和aspnet_regiis.exe)八、开始制作第一个wcf服务。打开数据层的I_dal.vb,先作好接口,见图。前缀<ServiceContract()>说明是接口,<DataContract()>说明是数据协定,简单理解就是自定义类型,用来做传输的参数。九、打开数据支的Dal.vb。实现上述接口,语句比较简单,不明白的把代码写进去慢慢看就懂了。 Implements 来实现接口,然后在时面写上
7、处理的语句,这里面是一个用户与口令的判断。十、右键点击数据层,点生成。再点发布,这里发布到e:abc目录十一、 打开IIS,选择【默认网站】->新建->虚拟目录->输入 Wcf ->选择 e:abc十二、在ie浏览器中输入/wcf/Dal.Dal.svc,出现以下的提示,说明wcf服务已经发布成功。13、 点击业务层,打开菜单项目->添加引用_>项目->数据层,这里主要是要用到自定义类型(数据协定)14、 点击业务层,打开菜单项目->添加服务引用-> 地址输入/wcf/Dal.Da
8、l.svc,命名空间为:wcf十五、点击界面层,打开菜单项目->添加服务引用-> 地址输入/wcf/Dal.Dal.svc,命名空间为:wcf,这里的步骤和业务层的引用步骤是一致的。为什么要进行这一步?因为很奇怪的,界面层引用了业务层的功能,但却不引用它的wcf配置。或许新的vs版本会解决这个问题?图略。15、 打开业务层的Bll.vb,输入一个函数据F_身份验证,看图,引用了刚才的Wcf服务。十六、打开业务层的Bll.vb,输入以下代码。十七、打开界面层的ui.vb,放入一个button,两个文本框txt_姓名,txt_口令。十八、点击界面层,打开项目菜单->添加引用->项目->数据层、业务层十八、Ui.vb中输入代码19、 右键点击界面层->设置为启动项目。二十、运行,输入用户名:王小二,密码:123,得出结果。二十一、小结。三层结构我个人的理解,应该是为了分工,界面归界面,业务实现归业务实现,数据归数据。作一个大的系统时,光靠一个人是
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年体育经纪人职业考点剖析试题及答案
- 足球裁判员等级考试详尽试题及答案
- 2024年游泳救生员考试的重要性分析与试题及答案
- 2024年农业植保员考试独特试题及答案
- 2024年裁判员考试政策更新试题及答案
- 2025年中国全光亮化学镀镍光亮剂市场调查研究报告
- 2025年中国侧立式灯支架市场调查研究报告
- 2025年中国不锈钢清洗车市场调查研究报告
- 裁判员等级考试复习策略试题及答案
- 激活潜能的足球裁判员试题与答案
- 2025年甘肃西北永新集团招聘11人笔试参考题库附带答案详解
- 自然辩证法论述题146题带答案(可打印版)
- 十八项医疗核心制度培训新版-课件
- 产业经济学第三版(苏东水)课后习题及答案完整版
- 初中综合实践课程标准
- 首件检验记录表(标准样版)
- 中建六局建设发展公司责任目标管理考核办法
- 太阳能光伏发电系统PVsyst运用
- 压实沥青混合料密度(表干法)自动计算
- 管桩水平承载力计算
- 博硕BSL2236OAC全自动说明书(触摸屏)
评论
0/150
提交评论