2016-05-19 4 views
0

ASP.NET(C#)アプリケーションでWCFを使用してRESTfulサービスを作成しようとしています。WCF:.SVCファイルとは別のプロジェクトで契約と実装を行う方法

ABC.WebAppという名前の私のクラスライブラリプロジェクトの1つでは、契約のファイルとそのインタフェースを実装する1つのファイルを作成しました。両方のファイルの拡張子は.csです。

次に、ABCWebというメインWebアプリケーション(すべての.aspxファイルと.aspx.csファイルがある)に、SPPService.svcという名前の新しいWCFサービスを追加しました。これにより、内部に2つのファイルがあるApp_CodeというABCWebのルートに新しいフォルダが自動的に作成されました。私はそれらとApp_Codeフォルダの両方を削除しました。私は、次の.SVCファイルのマークアップを変更:

<%@ ServiceHost Service = "ABC.WebApp.ExternalServices.WS.SPP.Rest.SPPService" Language="C#" %> 

最後に、私は次のセクションを追加するために、Web.configファイルを変更:

<service name="ABC.WebApp.ExternalServices.WS.SPP.REST.SPPService" behaviorConfiguration="defaultBehaviour"> 
    <endpoint name="webHttpsBinding" address="" binding="webHttpBinding" contract="ABC.WebApp.ExternalServices.WS.SPP.REST.ISPPService" 
     behaviorConfiguration="webHttp" bindingConfiguration="webHttpTransportSecurity"> 
    </endpoint> 
    <endpoint name="mexHttpsBinding" address="mex" binding="mexHttpsBinding" contract="IMetadataExchange"> 
    </endpoint> 
</service> 

問題は、私がしようとするということです

http://localhost:81/ExternalServices/WS/SPP/REST/SPPService.svc

メッセージ:次のリンクを参照して、私は例外を取得サービス「/ExternalServices/WS/SPP/REST/SPPService.svc」をACTIVすることはできませんコンパイル中の例外のためにatedされました。例外メッセージは次のとおりです。「ABC.WebApp.ExternalServices.WS.SPP.Rest.SPPService」、ServiceHostディレクティブのService属性値として提供されるか、または構成要素system.serviceModel/serviceHostingEnvironment/serviceActivationsに指定できませんでした。見つかりました。

+0

あなたの 'ABCWeb'プロジェクトに' ABC.WebApp'への参照を入れましたか? – Tim

答えて

0
<%@ ServiceHost Service = "ABC.WebApp.ExternalServices.WS.SPP.Rest.SPPService" Language="C#" %> 

サービスでは大文字と小文字が区別されます(「Rest」)。修正版は以下の通りです。

関連する問題