それぞれ 1 つの .aspx、.asmx、および .svc ファイルで単純なアプリケーションをホストしようとしています。ホスティングを実現するために、以下のガイドに従いました (私は Linux の世界に非常に慣れていないため、理解するのに時間がかかりました!):
http://www.mono-project.com/Mod_mono#Manual_Mod_Mono_Configuration
すべてのホスティングの後、aspx および asmx ファイルにアクセスできます。しかし、svc ファイルにアクセスしようとすると、次のエラーが表示されます。
ServiceHost には、構成、動作、または AddServiceEndpoint メソッドの呼び出しによって定義された、少なくとも 1 つのアプリケーション エンドポイント (メタデータ交換エンドポイントは含まれません) が必要です。
また
HttpListenerContext は、登録されたチャネルのいずれとも一致しません
以下のように web.config で定義された非常に単純なサービス エンドポイントがあります。
<system.serviceModel>
<services>
<service name="TestWCFService">
<endpoint address="http://localhost/MonoTest/TestWCFService.svc" binding="basicHttpBinding"
contract="MonoTest.ITestWCFService"></endpoint>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="true" />
</behavior>
</serviceBehaviors>
</behaviors>
<serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
私が間違っていることを教えてください。
注: MS VS 2010 を使用してこのプロジェクトを作成し、公開しました。公開されたディレクトリが Apache/Linux 環境にコピーされます。WCF は複合型を使用しません。Mono バージョン 2.8.2 を使用しています
UPDATE 更新: 2.10.2 Mono を使用してみました。このエラーはなくなり、新しいエラーに直面しています:
XmlSchema error: Named item http://tempuri.org/:DoWork was already contained in the schema object table. Consider setting MONO_STRICT_MS_COMPLIANT to 'yes' to mimic MS implementation. Related schema item SourceUri: , Line 0, Position 0.