http://www.sufeinet.com/plugin.php?id=keke_group

苏飞论坛

 找回密码
 马上注册

QQ登录

只需一步,快速开始

分布式系统框架(V2.0) 轻松承载百亿数据,千万流量!讨论专区 - 源码下载 - 官方教程

HttpHelper爬虫框架(V2.7-含.netcore) HttpHelper官方出品,爬虫框架讨论区 - 源码下载 - 在线测试和代码生成

HttpHelper爬虫类(V2.0) 开源的爬虫类,支持多种模式和属性 源码 - 代码生成器 - 讨论区 - 教程- 例子

查看: 38955|回复: 7

[WebService] c# 怎么动态修改webservice的地址和端口

[复制链接]
发表于 2012-12-4 10:24:04 | 显示全部楼层 |阅读模式
                             c# 怎么动态修改webservice的地址和端口
静态修改方式
------------------------------------
这个问题其实并没有我想像的那个复杂,我们都知道怎么直接修改吧,那就是修改WebConfig文件的配置节
具体的方法看下面图片

QQ截图20121204101027.png
这个相信很多人都知道,直接修改就行了
动态修改方式
----------------------------------------------------------
那么怎么动态修改呢?
我想可能很多人都会这样讲,修改WebConfig文件,有专用的帮助类,也可以自己写因为WebConfig是可以Xml的形来编辑的,对的这种方法确实是可行的
那么我告诉你们,你们错了,有更简单而且更适合的方法
方法如下
大家使用Webservice的第一步应该是创建对象吧
是不是这样,看下面代码
[code=csharp]  //Web服务对象
    WebReference.Service1SoapClient objService = new WebReference.Service1SoapClient();[/code]
如果你细心一点的话,右建这个构造方法查看一下转到定义试试
QQ截图20121204101610.png

这是转到定义之后最上面的五个方法大家来看一下吧
QQ截图20121204101711.png
对就是有这样五个自动生成的方法
[code=csharp]  public Service1SoapClient();
        public Service1SoapClient(string endpointConfigurationName);
        public Service1SoapClient(Binding binding, EndpointAddress remoteAddress);
        public Service1SoapClient(string endpointConfigurationName, EndpointAddress remoteAddress);
        public Service1SoapClient(string endpointConfigurationName, string remoteAddress);[/code]
大家一起看一下第四个方法和第五个方法
我解释一下
[code=csharp]        //endpointConfigurationName 配置节的名称,remoteAddress配置节对象
        public Service1SoapClient(string endpointConfigurationName, EndpointAddress remoteAddress);
        //endpointConfigurationName 配置节的名称,remoteAddress配置节URL
        public Service1SoapClient(string endpointConfigurationName, string remoteAddress);
        //设置其它参数[/code]
对就是这两个方法,我们只要修改第五个就行了,
使用方法如下

[code=csharp]//Web服务对象
    WebReference.Service1SoapClient objService = new WebReference.Service1SoapClient("Service1Soap","你要修改的URL例如:http://www.sufeinet.com/webservices.asmx");
   [/code]
问题解决了,我们只要动态配置一下这个参数就行了,具体方法相信大家都会了,存储在数据库或者别的地方都是可以的。
不要再傻者去搞配置文件了,webservice本身就有修改的方式


1. 开通SVIP会员,免费下载本站所有源码,不限次数据,不限时间
2. 加官方QQ群,加官方微信群获取更多资源和帮助
3. 找站长苏飞做网站、商城、CRM、小程序、App、爬虫相关、项目外包等点这里
发表于 2012-12-20 15:21:04 | 显示全部楼层
学习了,现在正准备做一个修改webconfig中的链接服务器和数据库的页面,主要是服务器地址和数据库名在以后可能会变化,直接做一个修改页面感觉会好点吧。。。
 楼主| 发表于 2012-12-20 15:22:17 | 显示全部楼层
weiyz2011 发表于 2012-12-20 15:21
学习了,现在正准备做一个修改webconfig中的链接服务器和数据库的页面,主要是服务器地址和数据库名在以后可 ...

直接配置在配置文件就行了
发表于 2012-12-20 15:30:13 | 显示全部楼层
admin 发表于 2012-12-20 15:22
直接配置在配置文件就行了

以前没做过这些,后来跟K3金蝶的系统用接口,就顺便安装了一个K3的系统,才发现有专门的一个页面供客户修改这些配置文件的
发表于 2013-5-8 20:14:17 | 显示全部楼层
受教了,学习中……
发表于 2013-5-20 10:10:36 | 显示全部楼层
受教了,学习中……
发表于 2013-8-22 08:34:06 | 显示全部楼层
学习了!以前都是修改配置文件的~
发表于 2014-9-9 22:28:44 | 显示全部楼层
强烈支持楼主ing……
您需要登录后才可以回帖 登录 | 马上注册

本版积分规则

QQ|手机版|小黑屋|手机版|联系我们|关于我们|广告合作|苏飞论坛 ( 豫ICP备18043678号-2)

GMT+8, 2024-11-22 07:38

© 2014-2021

快速回复 返回顶部 返回列表