2

私のSilverlight4WCF RIAサービスプロジェクトは、IISからも公開されているVS2010の開発マシンで正常に動作します。しかし、それをクライアントマシン(windows7)に展開すると、すべてのサービスメソッドがNotFoundエラーを返します。私は一日中すべてのブログ投稿とフォーラムを試しましたが、無駄でした。fiddlerからのサービスURLは開発マシンでは返されますが、クライアントPCでは404が返されます。私は今とてもイライラしています。私の最後の試行では、物理的な.svcファイルの手動作成について見ました

<%@ ServiceHost Service="Fully.Qualified.NameOfYourService" Factory="System.ServiceModel.DomainServices.Hosting.DomainServiceHostFactory" %>

しかし、実装方法がわからなかったので、誰かが私の未来を救ってくれませんか?

4

2 に答える 2

4
  1. .NETFramework4.0をインストールします。
  2. IIS7をインストールし、[Windowsの機能]で[Windows CommunicationFoundationHTTPアクティベーション]を有効にします。
  3. オプション「SERVER=true」を指定してWCFRIAサービスをインストールします(Webアプリケーションのbinフォルダーに格納されているSystem.ServiceModel.DomainServices。*dllの「CopyLocal= True」を設定するこの手順をスキップすることもできます)。 msiexec / i RIAServices.msi SERVER = true
  4. 「IISマネージャー」の「アプリケーションの追加」メニューを使用して、アプリケーション名、アプリを含むデプロイディレクトリ、およびアプリケーションプールとしての「ASP.NETv4.0」を指定します。「404エラー」が発生した場合は、「C:\ Windows \ Microsoft.NET \ Framework\v4.0.30319」ディレクトリから「aspnet_regiis.exe-i」を実行することも役立ちます。
于 2013-01-04T12:05:50.590 に答える
1

簡単な方法として、[アプリケーションをホストする]新しいWebサイトを作成し、フレームワークフォルダー[32ビットの場合はFramework、64ビットアプリケーションの場合はFramework64]から「aspnet_regiis-i」を実行します。

新しいWebサイトの下の[HTTPハンドラー]セクションを表示すると、.svcファイルのさまざまなマッピングが作成されていることがわかります[デフォルトのWebサイトを振り返ると、これらはアップグレードされていません!]。これにより404エラーが解決され、Fiddlerはsvcファイルが正しくアクセスされていることも確認していました。

最後の構成として、アプリケーションプールがASP.NET 4統合モードプールに設定されていることを確認し、32ビットアプリケーションの許可を有効にします。

お役に立てれば :-)

于 2013-01-04T06:29:57.493 に答える