2010-08-11 116 views
1

我想託管Wcf服務,在Web應用程序中創建Wcf服務庫。在Web應用程序中託管Wcf服務庫

我已經做了與Web服務的ASMX同樣的事情:

using System.Reflection; 
using System.Web; 
using System.Web.Services; 
using System.Web.Services.Protocols; 

namespace WebServiceLibrary 
{ 
    [WebService(Namespace = "http://tempuri.org/")] 
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] 
    public class WebService1 : WebService, IHttpHandlerFactory 
    { 
     private static WebServiceHandlerFactory wshf = new WebServiceHandlerFactory(); 
     private static MethodInfo coreGetHandlerMethod = typeof(WebServiceHandlerFactory).GetMethod("CoreGetHandler", BindingFlags.Instance | BindingFlags.NonPublic); 

     public System.Web.IHttpHandler GetHandler(System.Web.HttpContext context, string requestType, string url, string pathTranslated) 
     { 
      return (IHttpHandler)coreGetHandlerMethod.Invoke(wshf, new object[] { GetType(), context, context.Request, context.Response }); 
     } 

     public void ReleaseHandler(IHttpHandler handler) 
     { 

     } 

     [WebMethod] 
     public string HelloWorld() 
     { 
      return "Hello World"; 
     } 
    } 
} 

的Web應用程序的web.config文件:

<system.webServer> 
     <handlers> 
      <add name="WebService" path="WebService1.asmx" verb="*" preCondition="integratedMode" type="WebServiceLibrary.WebService1"/> 
     </handlers> 
    </system.webServer> 

是這裏的方式做同樣的事情與Wcf服務?

問候。

回答

0

當然 - 最簡單的事情可能是創建一個新的'WCF服務應用程序'(這是一個web應用程序),並根據您需要的位來使用它作爲模板,例如system.serviceModel部分你的web.config

+0

你能張貼一個示例plz – Jni 2010-08-11 08:32:09