webservice的部署问题 高手进~~~~

amingo 2009-09-10 07:17:43
在开发时引用webservice是直接反键web引用,然后添加web地址就行了。这个地址在程序中是写死的,部署后webservice的地址就是客户那边的地址,那程序怎么修改???还有webservice是如何部署的?

1楼 以倒分处理,删除回复,积分回滚。
by 竹子版主
...全文
411 30 打赏 收藏 转发到动态 举报
写回复
用AI写文章
30 条回复
切换为时间正序
请发表友善的回复…
发表回复
jerry_zuo 2009-09-11
  • 打赏
  • 举报
回复
汗 分多 果然 竞争激烈。
哈哈。这么建议
  • 打赏
  • 举报
回复
[Quote=引用 20 楼 wxhysoftsodc 的回复:]
我怎么没有想过,把它web.config里面。
[/Quote]

如果你可以去改web.config文件,为什么不直接在vs的工程中找到那个web服务的引用然后直接用鼠标右键菜单中选择“配置引用服务”?为什么不直接用目标地址来开发?

就是因为在应用程序中这个地址是必须在运行时可以灵活重新定向的,完全不同于开发时所使用的路径。
wxhysoftsodc 2009-09-11
  • 打赏
  • 举报
回复
我怎么没有想过,把它web.config里面。
amingo 2009-09-11
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 wuyq11 的回复:]
添加 Web 引用创建客户端代理类的方式调用WebService,
从目标 URL 下载 WSDL 数据。
使用 ServiceDescription 创建和格式化 WSDL 文档文件。
使用 ServiceDescriptionImporter 创建客户端代理类。
使用 CodeDom 动态创建客户端代理类程序集。
利用反射调用相关 WebService 方法。
参考
[/Quote]

引用webservice后会自动在web.config中加一个webservice节点值为地址,部署之后改这个就行了。
cyrix_wxm 2009-09-11
  • 打赏
  • 举报
回复
用程序取得Value节点中的值
实例化WebService ,地址从新赋下。
不管他怎么变都可以
cyrix_wxm 2009-09-11
  • 打赏
  • 举报
回复
你引用后客户端Config中就有如下节点
<applicationSettings>
<WebServiceTest.Properties.Settings>
<setting name="WebServiceTest_localhost_Service" serializeAs="String">
<value>http://localhost:2099/MyService/Service.asmx</value>
</setting>
</WebServiceTest.Properties.Settings>
</applicationSettings>
修改value节点中的值就可以了
amingo 2009-09-11
  • 打赏
  • 举报
回复
为什么我的webservice返回的是
<?xml version="1.0" encoding="utf-8"?>
<string xmlns="http://tempuri.org/"><sometag>Hello World</sometag> </string>

而不是
<?xml version="1.0" encoding="utf-8"?>
<string xmlns="http://tempuri.org/"> <sometag>Hello World </sometag> </string>
xiaoronghu 2009-09-11
  • 打赏
  • 举报
回复
寫在配置文件里
PSSonyXbox 2009-09-11
  • 打赏
  • 举报
回复
同意6楼的 你可以先参考一下
amingo 2009-09-11
  • 打赏
  • 举报
回复
为什么我的webservice返回的是
<?xml version="1.0" encoding="utf-8"?>
<string xmlns="http://tempuri.org/"><sometag>Hello World</sometag> </string>

而不是
<?xml version="1.0" encoding="utf-8"?>
<string xmlns="http://tempuri.org/"> <sometag>Hello World </sometag> </string>
  • 打赏
  • 举报
回复
举个例子,引入服务命名空间WSvr之后,调用其TimerSvr服务的GetTime方法,可以写:
    var wsvr = new WSvr.TimerSvr();
wsvr.Url = "http://www.abc.com/myWServer.asmx";
var result = wsvr.GetTime();


这里,你就使用了一个与配置web服务不同的地址来访问其它站点。
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 paulin 的回复:]
部署就和asp.net程序一样
这个地址可以不在程序中写死,通过配置文件配置该地址
通过代理类的URL属性设置,获得动态服务地址
[/Quote]

是的!
amingo 2009-09-11
  • 打赏
  • 举报
回复
为什么我的webservice返回的是
<?xml version="1.0" encoding="utf-8"?>
<string xmlns="http://tempuri.org/"><sometag>Hello World</sometag> </string>

而不是
<?xml version="1.0" encoding="utf-8"?>
<string xmlns="http://tempuri.org/"> <sometag>Hello World </sometag> </string>
yanglei6979431 2009-09-11
  • 打赏
  • 举报
回复
帮忙顶顶哦
Lovely_baby 2009-09-11
  • 打赏
  • 举报
回复
你在config中进行相应的配置 就行
amingo 2009-09-11
  • 打赏
  • 举报
回复
为什么我的webservice返回的是
<?xml version="1.0" encoding="utf-8"?>
<string xmlns="http://tempuri.org/"><sometag>Hello World</sometag></string>

而不是
<?xml version="1.0" encoding="utf-8"?>
<string xmlns="http://tempuri.org/"><sometag>Hello World</sometag></string>

Andy__Huang 2009-09-11
  • 打赏
  • 举报
回复
这个一般是在web.config里设置一个键值,这个键值随时都可以改,不需要修改程序的呀
例如
<appSettings>
<add key="servername" value="192.168.1.10" />
<add key="userid" value="sa" />
<add key="password" value="12345" />
<add key="dbname" value="dbmrp" />
</appSettings>
BitCoffee 2009-09-11
  • 打赏
  • 举报
回复
动态添加webservice就可以了
参考1
参考2
屯里的人 2009-09-11
  • 打赏
  • 举报
回复
添加 Web 引用创建客户端代理类的方式调用WebService,
从目标 URL 下载 WSDL 数据。
使用 ServiceDescription 创建和格式化 WSDL 文档文件。
使用 ServiceDescriptionImporter 创建客户端代理类。
使用 CodeDom 动态创建客户端代理类程序集。
利用反射调用相关 WebService 方法。
<system.webServer>
<validation validateIntegratedModeConfiguration="false"/>
<modules>
<add name="ScriptModule" preCondition="integratedMode" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
</modules>
<handlers>
<remove name="WebServiceHandlerFactory-Integrated"/>
<add name="ScriptHandlerFactory" verb="*" path="*.asmx" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
<add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
<add name="ScriptResource" preCondition="integratedMode" verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
</handlers>
</system.webServer>
wym0807 2009-09-11
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 wuyq11 的回复:]
和网站部署一样,IIS里建立虚拟目录,命名,选择路径。
配置路径在config里,调用WebService时动态指定Url
[/Quote]
就这样就可以了啊?
加载更多回复(9)

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧