2

2つのASP.NetMVCWebアプリケーション、ParentSiteとChidSiteがあります。ParentSiteには、子サイトに移動するポップアップウィンドウを開くページがあり、子ページが完了すると、親ページに通知されます。ただし、クロスドメインエラーが発生します

Parent is = http://localhost:49000/Home
Child is = http://localhost:50000/Home

Visual Studio開発サーバー(ローカルIISサーバー上ではない)の1つのポートで両方のWebアプリケーションを実行できる方法はありますか?

プロジェクトで同じポートを使用する場合、既にDEVサーバーが実行されていると、VisualStudioは自動的に動的ポートを選択します。

助けてくれてありがとう。

4

1 に答える 1

3

いいえ、同じポート/アプリケーション スペースで 2 つのアプリケーションをホストすることはできません。web.config、ルーティング (コメントで言及)、セキュリティなどを考えてみてください。これらはすべてそのスペースの一部です。

クロスドメイン エラーの解決を試みることもできますが、これは簡単ではなく、(まだ) クロス ブラウザー フレンドリーではありません。それが変わることを願っています。

いくつかのオプションがあります。

  • 必要なビットを ChildSite で WebAPI で公開し、コントローラーの ParentSite からそれを消費します。単純な HTTP 取得でこれを行い、JSON をポップアップに返すことができます (これは現在、ParentSite に存在します)。クライアントはサードパーティのサイトにアクセスしなくなりました。
  • 領域またはポータブル領域を使用して、子プロジェクトを ParentSite に組み込みます

エリアを追加するには、ソリューション エクスプローラーで MVC プロジェクトを右クリックし、[追加] -> [エリア] を選択します。

乾杯。

于 2013-02-17T18:01:16.333 に答える