热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

你会在C#的类库中添加webservice引用吗?

本文并不是什么高深的文章,只是VS2008应用中的一小部分,但小部分你不一定会,要不你试试:本人对于分布式开发应用的并不多,这次正好有一个项目要应用webservice,我的开发环

 本文并不是什么高深的文章,只是VS2008应用中的一小部分,但小部分你不一定会,要不你试试: 

     本人对于分布式开发应用的并不多,这次正好有一个项目要应用web service,我的开发环境是vs2008,之所以没有选择现在热门的WCF,本人有如下原因:
 

     1:负责开发Web Service的小组对于vs2008应用不多,更不能奢望令人垂涎的WCF。
     2:项目开发时间有限,根本不许你去拿项目做实验。
     3:项目改动不大,web service足够对付需求。
 
      由于我们的项目是从1.1直接升级到3.5,升级的时候,把web项目直接改成类库,这样无论环境发生多大的变化,只要能够兼容低级版本,所有原来的文件都是能用的,例如,1.1中创建一个网页,会有一个resx的资源文件,但是3.5中创建的网页则是designer.cs,以后如果再升级,只要把相关新文件类型创建好,然后添加到类库中,这样同样可以享用高级版本的功能,说的比较含糊,不知道大家是否明白。

     现在要做的就是在这样的类库中引用web service,凭直觉就认为,只要添加一下引用不就行了吗?其实是这样的吗?
    
     先说下在web application项目中如何引用:


     第一:对web项目点击右键,如图一。


技术分享    

     第二:点击添加web 引用,如下图二.


技术分享    

     第三:查找可用的web service,如果是本解决方案内的直接搜索就行,如果是外部的,就输入有效地址然后查询,这里面可以测试web service,如图三:


技术分享    

      第四:添加引用成功后就会出现Web References目录.如图四,然后就是调用了。


技术分享   
  

       这应该就是最基本的添加web service引用的方法了。当时我也是按照这样的思路去添加。发现类库中点击右键并没有出现我熟悉的 “添加web 引用”,而出现图五效果:

技术分享  

       此时我认为可能是升级的原因变成"添加服务引用",接下来的操作和上面操作相同.点击出现图六;


技术分享    
  

       输入web service地址,测试连接都成功,添加成功后出现图七:

技术分享

        然而调用的时候并不像想像的那么成功,结果可想而之,我添加的WCF服务。这里错误代码我就不好意思帖了。知道引用对象错了后,就是让类库来添加web service,然而点击类库后,右键并没有"添加web 服务"的选项。如何让类库支持添加web service引用成了我最大的难题。此时我咨询了同事,基本排除程序问题,因为通过网站形式可以正常访问web service。

        园子里的朋友你们在VS08中的类库会添加web servece引用吗?我baidu了一下午,毫无结果,最好只好再问别的同事,几经周折,有一个太有才的同事说类库可以添加web service引用,我不敢相信,我把方法贴出来show一下;
  

        第一:对目标类库点击右键,如图六:
        第二:点击“添加服务引用”如图八:

技术分享

        关键是图左下角的“高级”按键。点击如图九:
  

技术分享      

            第三:注意了,同样是左下角,“添加WEB引用”的按钮终于出现了,点击如图十:之后的操作就不多说了。

技术分享

         到这里,就最终完成了类库中添加web service引用的目的。操作并不复杂,只是实在是想不明白,VS为什么要把添加web引用放的这么隐蔽呢,难道是为了WCF的推广?

你会在C#的类库中添加web service引用吗?


推荐阅读
  • 本文详细对比了HashMap和HashTable在多线程环境下的安全性、对null值的支持、性能表现以及方法同步等方面的特点,帮助开发者根据具体需求选择合适的数据结构。 ... [详细]
  • 使用 ModelAttribute 实现页面数据自动填充
    本文介绍了如何利用 Spring MVC 中的 ModelAttribute 注解,在页面跳转后自动填充表单数据。主要探讨了两种实现方法及其背后的原理。 ... [详细]
  • Docker基础入门与环境配置指南
    本文介绍了Docker——一款用Go语言编写的开源应用程序容器引擎。通过Docker,用户能够将应用及其依赖打包进容器内,实现高效、轻量级的虚拟化。容器之间采用沙箱机制,确保彼此隔离且资源消耗低。 ... [详细]
  • 本文列举了构建和运行 Struts2 应用程序所需的核心 JAR 文件,包括文件上传、日志记录、模板引擎等关键组件。 ... [详细]
  • egg实现登录鉴权(七):权限管理
    权限管理包含三部分:访问页面的权限,操作功能的权限和获取数据权限。页面权限:登录用户所属角色的可访问页面的权限功能权限:登录用户所属角色的可访问页面的操作权限数据权限:登录用户所属 ... [详细]
  • 本文由chszs撰写,详细介绍了Apache Mina框架的核心开发流程及自定义协议处理方法。文章涵盖从创建IoService实例到协议编解码的具体步骤,适合希望深入了解Mina框架应用的开发者。 ... [详细]
  • 本文提供了一个关于AC自动机(Aho-Corasick Algorithm)的详细解析与实现方法,特别针对P3796题目进行了深入探讨。文章不仅涵盖了AC自动机的基本概念,还重点讲解了如何通过构建失败指针(fail pointer)来提高字符串匹配效率。 ... [详细]
  • 本报告记录了嵌入式软件设计课程中的第二次实验,主要探讨了使用KEIL V5开发环境和ST固件库进行GPIO控制及按键响应编程的方法。通过实际操作,加深了对嵌入式系统硬件接口编程的理解。 ... [详细]
  • LeetCode 102 - 二叉树层次遍历详解
    本文详细解析了LeetCode第102题——二叉树的层次遍历问题,提供了C++语言的实现代码,并对算法的核心思想和具体步骤进行了深入讲解。 ... [详细]
  • 本文概述了在GNU/Linux系统中,动态库在链接和运行阶段的搜索路径及其指定方法,包括通过编译时参数、环境变量及系统配置文件等方式来控制动态库的查找路径。 ... [详细]
  • 本文详细介绍了如何使用Rufus工具制作一个兼容UEFI启动模式的Windows Server 2008 R2安装U盘,包括必要的软件和步骤。 ... [详细]
  • 本文介绍如何使用 Python 计算两个时间戳之间的时间差,并将其转换为毫秒。示例代码展示了如何通过 `time` 和 `datetime` 模块实现这一功能。 ... [详细]
  • 使用REM和媒体查询实现响应式布局
    本文介绍如何利用REM单位和媒体查询(Media Queries)来创建适应不同屏幕尺寸的网页布局。通过具体示例,展示在不同屏幕宽度下如何调整页面元素的样式。 ... [详细]
  • SPFA算法详解与应用
    当图中包含负权边时,传统的最短路径算法如Dijkstra不再适用,而Bellman-Ford算法虽然能解决问题,但其时间复杂度过高。SPFA算法作为一种改进的Bellman-Ford算法,能够在多数情况下提供更高效的解决方案。本文将详细介绍SPFA算法的原理、实现步骤及其应用场景。 ... [详细]
  • Awk是一款功能强大的文本分析与处理工具,尤其在数据解析和报告生成方面表现突出。它通过读取由换行符分隔的记录,并按照指定的字段分隔符来划分和处理这些记录,从而实现复杂的数据操作。 ... [详细]
author-avatar
jieyang6888_130
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有