运行环境
.NET 3.5 + IIS7
1. 确保IIS7 已经将*.svc map 到了 System.ServiceModel.Activation.HttpHandler, System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
2. 确保IIS7 已经添加了WCF Module : System.ServiceModel.Activation.HttpModule, System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
Host WCF in IIS 三步走:
1. 创建VD.
在VD目录下创建 App_Code目录,在该目录下添加StockService.cs:
using System;
using System.ServiceModel;
namespace WCFLib{
[ServiceContract]
public interface IStockService {
[OperationContract]
double GetPrice(string ticket);
}
public class StockService : IStockService {
public double GetPrice(string ticket) {
return 94.85;
}
}
}
2. 创建SVC 文件,用来定义 Service 的实现(implementation).
在VD 目录下创建StockService.svc
<%@ServiceHost language=c# Debug="true" Service="WCFLib.StockService"%>
3. 给web.config 文件添加 <system.serviceModel>
在VD目录下创建 web.config 文件
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.serviceModel>
<services>
<service name="WCFLib.StockService">
<endpoint address="" binding="wsHttpBinding" contract="WCFLib.IStockService"/>
</service>
</services>
</system.serviceModel>
</configuration>
然后在浏览器里直接访问StockService.svc 进行验证。如果你用的是dll 而非cs 文件。那么在VD下创建Bin目录,把Dll 文件放置到 Bin目录下即可和ASP.NET 一样的处理方式。
本文转自 xhinkerx 51CTO博客,原文链接:http://blog.51cto.com/xhinker/199172,如需转载请自行联系原作者