4

RIA WCF サービスの展開に問題を抱えている人が世界中にあふれているようですが、今では私もその 1 人です。私はすでにたくさんのことを試しましたが、役に立ちませんでした。作成した Silverlight 3 アプリケーションをサポートするには、WCF RIA が必要です。

簡単に言うと、新しい WCF RIA サービス (11 月 9 日?) を使用して、VS 2008 を開き、新しいプロジェクト (silverlight アプリケーション) を作成して、「.NET RIA サービス」を有効にします。Web プロジェクト - Linq2SQL dbml ファイル (以前に準備した SQL 2005 DB から) に新しい項目を追加してコンパイルします。新しい項目を Web プロジェクトに追加します - ドメイン サービス (必要なテーブルをリンク) とコンパイル。ドメイン コンテキストを使用して、MainPage で標準の RIA get クエリを使用してデータを「読み込み」、TextBlock を追加して返されたデータを表示します。ビルド & 実行 (cassini) - 成功。VS を使用してローカル PC の IIS に公開 - 成功。

VS を使用してテスト サーバー (IIS6) に発行する - 場所を参照すると、Silverlight アプリが読み込まれますが、Fiddler から、すべての WCF .svc 要求で 404 が返されたことがわかります。Fiddler を使用して、サービス リクエストで「IE を起動」します。これは true - 404 です。

既に aspnet_regiis、ServiceModelReg を実行し、.xap、.xaml、.xbap、および .svc の MIME タイプを追加しました。System.Web.Ria と System.Web.DomainServices DLL を copy local true で含めました。

どちらかで助けが必要です

a) 解決策

b) 解決策を見つけるためのアプローチ

4

5 に答える 5

3

これにもいくつか問題がありましたが、一度理解すると比較的簡単です。

まず、http://timheuer.com/blog/archive/2009/12/10/tips-to-deploy-ria-services-troubleshoot.aspxを実行します (ただし、そのほとんどはカバーされているようです)。

IIS6 の新しい system.webServer ビットと古いビットの web.config に DomainServiceModule があることを確認します。

    <httpModules>
   <add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
   <add name="DomainServiceModule" type="System.Web.Ria.Services.DomainServiceHttpModule, System.Web.Ria, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
  </httpModules>

最後に、SL が (フィドラーから) 検索する場所に .svc ファイルを作成し、次のように入力して、サービスを手動で作成する必要がありました。

<%@ ServiceHost Service="NameOfSerice" Factory="System.Web.Ria.DomainServiceHostFactoryEx" %>

.svc ファイルにも直接アクセスしてください (最後に /binary を付けずに)。そこにいくつかの素晴らしいエラーが表示される可能性があります (もちろん、404 を解決したら!)

HTH、

ヨルダン。

于 2010-01-07T00:30:38.270 に答える
1

.svc ファイルが見つからないという問題で、しばらくこの問題に取り組みました。すぐに、それが私の .svc だけではなく、すべての .svc ファイルであることに気付きました。その後、IIS6 の問題であることが判明しました。ASP.NET v4.0x Web Service Extensions はデフォルトで「禁止」に設定されていることが判明しました。Web Service Extensions 構成に入り、ASP.NET v4.0x を「許可」に設定すると、すべてがうまくいきました。

于 2010-05-18T16:44:13.177 に答える
0

私は同じ問題に遭遇しました。Windows 7 の cassini サーバーで問題なく動作しました。IIS7 を使用して Windows Server 2008 R2 に展開しましたが、動作しませんでした。Fiddler は、「EndPointNotFoundException」がスローされていることを報告しました。

サーバーを完全に制御できるので、私の解決策は、Visual Studio 2008 Express、Silverlight 3 SDK、および VS2008 用の WCF RIA Services Beta をインストールすることでした。これは、必要な DLL が GAC に既にインストールされていることを意味します。これが結果に影響を与えたとは思いませんが、Web アプリによって参照される RIA DLL の「ローカルにコピー」をオフにしました。

おそらく非正統的な解決策ですが、私にとってはうまくいきました!!! 実際、私はマイクロソフト サポートの提案でこれを行いました。

ところで、Microsoft によるこれに対するサポートは、現時点では非常にまばらです。彼らは実際に、WCF チームと Silverlight チームのどちらがこのテクノロジをサポートするのかを内部的に把握しようとしています。まだベータ版であることは承知していますが、「GoLive」ライセンスが完全にサポートされているわけではないことに注意してください。WCF チームの誰かが私を助けてくれましたが、通話中に何度か免責事項を言ってくれました。それらのチャネルではまだ実際にはサポートされていません。

于 2010-03-03T03:48:52.017 に答える
0

誰かが興味を持っている場合は、独自のバッチ スクリプトを使用して完全な Silverlight ソリューションを IIS に展開する方法について、この投稿で私の回答をお読みください。

Windows 7 の IIS 7 に管理サービス (WMSVC) UI はありますか?

VS 2010 の in-bulit webdeploy 機能が動作していたため、仕方がなかったので、これを行いました。バッチ スクリプトを使用すると、IIS で実行およびデバッグできるようになります。

これはこの質問に対する明確な回答ではありませんが、非常によく似た質問です。

于 2013-05-08T08:40:02.190 に答える
-1

ここで説明されているように Factory を拡張した場合にのみ、FactoryEx を使用すると思います。また、私のヘルプ ファイルによると、フル ネームは System.Web.Ria.Services.DomainServiceHostFactory ですが、GAC に System.Web.Ria がありますが、パーサーはそのタイプも作成できません。

同意します - https 経由で WCF RIA を展開するのは難しいことです - 私はまだそれを機能させていません。

于 2010-01-11T23:06:31.950 に答える