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

简介: 本文并不是什么高深的文章,只是VS2008应用中的一小部分,但小部分你不一定会,要不你试试:       本人对于分布式开发应用的并不多,这次正好有一个项目要应用web service,我的开发环境是vs2008,之所以没有选择现在热门的WCF,本人有如下原因:       1:负责开发Web Service的小组对于vs2008应用不多,更不能奢望令人垂涎的WCF。

本文并不是什么高深的文章,只是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的推广?

 原文:http://www.cnblogs.com/ASPNET2008/archive/2008/09/16/1292028.html

 

补充:调用方法

添加web引用时候的URL:http://xxxxx/WebInterface?WSDL

WebInterface为接口名称

 WebInterface vw = new WebInterface();
            var res = vw.pushData("<data>1</data>", 1, true);

            ViewBag.Result = res.resultDesc;

 

相关文章
|
3月前
【Azure 应用服务】Web App Service 中的 应用程序配置(Application Setting) 怎么获取key vault中的值
【Azure 应用服务】Web App Service 中的 应用程序配置(Application Setting) 怎么获取key vault中的值
|
6天前
【Azure App Service】PowerShell脚本批量添加IP地址到Web App允许访问IP列表中
Web App取消公网访问后,只允许特定IP能访问Web App。需要写一下段PowerShell脚本,批量添加IP到Web App的允许访问IP列表里!
|
1月前
|
API C#
异步轮询 Web API 的实现与 C# 示例
异步轮询 Web API 的实现与 C# 示例
69 0
|
1月前
|
C#
Delphi可不可以制作出像c#那样的dll类库?
在Delphi中,创建DLL项目(如dll.dpr)并定义一个类TMyCls后,在另一个项目(如test.dpr)中可以引入此DLL并直接实例化和调用类的方法。然而,Delphi目前主要支持两种DLL形式:动态链接库(需显式声明exports,仅支持函数调用)和ActiveX DLL(需定义IDL接口)。这两种方式都较为繁琐。相比之下,C# 的DLL类库更为便捷,编写并编译后即可在其他项目中直接使用。
|
3月前
|
前端开发 JavaScript C#
C#开发者的新天地:Blazor如何颠覆传统Web开发,打造下一代交互式UI?
【8月更文挑战第28天】Blazor 是 .NET 生态中的革命性框架,允许使用 C# 和 .NET 构建交互式 Web UI,替代传统 JavaScript。本文通过问答形式深入探讨 Blazor 的基本概念、优势及应用场景,并指导如何开始使用 Blazor。Blazor 支持代码共享、强类型检查和丰富的生态系统,简化 Web 开发流程。通过简单的命令即可创建 Blazor 应用,并利用其组件化和数据绑定特性快速搭建界面。无论对于 .NET 还是 Web 开发者,Blazor 都是一个值得尝试的新选择。
99 1
|
3月前
|
关系型数据库 MySQL Linux
【Azure 应用服务】在创建Web App Service的时候,选Linux系统后无法使用Mysql in App
【Azure 应用服务】在创建Web App Service的时候,选Linux系统后无法使用Mysql in App
【Azure 应用服务】在创建Web App Service的时候,选Linux系统后无法使用Mysql in App
|
3月前
|
开发者 iOS开发 C#
Uno Platform 入门超详细指南:从零开始教你打造兼容 Web、Windows、iOS 和 Android 的跨平台应用,轻松掌握 XAML 与 C# 开发技巧,快速上手示例代码助你迈出第一步
【8月更文挑战第31天】Uno Platform 是一个基于 Microsoft .NET 的开源框架,支持使用 C# 和 XAML 构建跨平台应用,适用于 Web(WebAssembly)、Windows、Linux、macOS、iOS 和 Android。它允许开发者共享几乎全部的业务逻辑和 UI 代码,同时保持原生性能。选择 Uno Platform 可以统一开发体验,减少代码重复,降低开发成本。安装时需先配置好 Visual Studio 或 Visual Studio for Mac,并通过 NuGet 或官网下载工具包。
188 0
|
3月前
|
Shell PHP Windows
【Azure App Service】Web Job 报错 UNC paths are not supported. Defaulting to Windows directory.
【Azure App Service】Web Job 报错 UNC paths are not supported. Defaulting to Windows directory.
|
3月前
|
Linux 应用服务中间件 网络安全
【Azure 应用服务】查看App Service for Linux上部署PHP 7.4 和 8.0时,所使用的WEB服务器是什么?
【Azure 应用服务】查看App Service for Linux上部署PHP 7.4 和 8.0时,所使用的WEB服务器是什么?
|
3月前
【Azure 应用服务】通过 Web.config 开启 dotnet 应用的 stdoutLog 日志,查看App Service 产生500错误的原因
【Azure 应用服务】通过 Web.config 开启 dotnet 应用的 stdoutLog 日志,查看App Service 产生500错误的原因