wcf服务如何以IIS为宿主进行发布?

shane007 2009-09-09 01:57:12
微软的wcf应用程序,如何在IIS上进行发布,有没有详细的步骤?
...全文
277 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
woaivs 2009-10-22
  • 打赏
  • 举报
回复
原文链接:http://www.cnblogs.com/owen-zhang/archive/2008/05/13/1195767.html

好处:采用以IIS作为宿主,就不必为Service专门建立一个host程序,部署也相对容易一些。

首先准备好测试用的WCF程序,这个例子只是做简单的求和计算,代码如下:


CalculatorService.svc(服务文件):

<%@ServiceHost Language=”C#” Debug="True" Service=" OwenZhang.WcfSamples.CalculatorService"%>

ICalculator.cs(定义服务契约):

[ServiceContract]
public interface ICalculator
{
[OperationContract]
int Add(int n, int m);
}

CalculatorService.cs(执行服务契约):

public class CalculatorService : ICalculator
{
public int Add(int n, int m)
{
return n + m;
}
}

注意: 假如你新建的项目类型是WebSite的话,ICalculator.cs和CalculatorService.cs文件位于App_Code文件夹下面。同样CalculatorService.svc要加上CodeBehind="~/App_Code/CalculatorService.cs"。


在Web.config文件中添加endpoint:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.serviceModel>
<services>
<service name="OwenZhang.WcfSamples.CalculatorService">
<endpoint address="" binding="wsHttpBinding" contract="OwenZhang.WcfSamples.Samples.ICalculator" />
</service>
</services>
</system.serviceModel>
</configuration>

然后,在IIS中新建网站或虚拟目录,这我们在系统默认网站下面建立虚拟目录“C:\inetpub\wwwroot\CalculatorService”,然后将程序编译后的文件拷贝到CalculatorService目录中,就可以通过endpoint调用该服务了。

注意:假如你使用的是IIS 7.0(Windows Vista、Windows Server 2008环境),请确认WCF Activation(Server Manager->Features-> .NET Framework 3.0 Features)中的HTTP Activation(HTTP)和Non-HTTP Activation(Message Queuing,TCP和Named Pipes)已经安装上了,否则加载相关的服务会失败。另外,假如IIS中缺少识别.svc类型文件的应用程序扩展映射的话,你需要手动加上。

wanzhigang 2009-09-27
  • 打赏
  • 举报
回复
我是直接用VS2008发布的,创建一个基于WEB的WCF服务,编写完成之后,在项目上点右键,再选择发布就行了.
jking1989 2009-09-26
  • 打赏
  • 举报
回复
学习一下哈
成都慢生活 2009-09-16
  • 打赏
  • 举报
回复
由系统来完成的话,直接用新建网页的方式建立wcf
由自己来完成的话,写一个svc文件就好了。
发布和普通页面一样,在iis下建立页面,建立applicationpool就好了。

这里有几个链接:
http://blog.csdn.net/cryeyes/archive/2009/09/11/4541991.aspx
mail_ricklee 2009-09-16
  • 打赏
  • 举报
回复
参考FortunBase中
HelloWorldWCF.cs

参考地址www.cnblogs.com/mail-ricklee
shane007 2009-09-11
  • 打赏
  • 举报
回复
有谁成功发布过...
zhongjiekangping 2009-09-10
  • 打赏
  • 举报
回复
关注中, 把宿主 定义到 iis 上就可以了吧 个人认为

12,162

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 Web Services
社区管理员
  • Web Services社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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