Microsoft Visual Studio Express 2013 for Web、バージョン12.0.30501.00 Update 2を持っています。2つのプロジェクトを含むソリューションがあり、1つはWeb APIで、もう1つはビュー用のMVCプロジェクトです。私はhttpresponsemessageを返す単純なWeb APIを作成しました。フィドラーに入ると、json応答が表示されます。しかし、2番目のプロジェクトでajaxを介して呼び出そうとすると、クロスドメインエラーが発生しました。
私が従おうとする解決策はこれです http://www.asp.net/web-api/overview/security/enabling-cross-Origin-requests-in-web-api 。ただし、コンソールマネージャーに_Install-Package Microsoft.AspNet.WebApi.Cors -pre -project WebService
_をインストールすると、エラーが発生したため、代わりにこの行を使用しました。 _Install-Package Microsoft.AspNet.WebApi.Cors
_次に、次のステップであるconfig.EnableCors();
の状態を試します。
_'System.Web.Http.HttpConfiguration' does not contain a definition for 'EnableCors' and no extension method 'EnableCors' accepting a first argument of type 'System.Web.Http.HttpConfiguration' could be found (are you missing a using directive or an Assembly reference?)
_
後で何をするかわからないので、_using System.Web.Http.Cors;
_も追加しようとしますが、名前空間が存在しないことを示します。このビジュアルスタジオは約3週間前にダウンロードされました。完全にサポートされているため、この機能をインストールするのは難しくないはずです。何か足りないものはありますか?
Nugetパッケージをインストールする必要がありますMicrosoft.AspNet.WebApi.Cors
Visual Studioのメニューから[管理パッケージ]に移動し、パッケージの名前を入力します
注:
Package Manager Consoleからインストールするには、Install-Package Microsoft.AspNet.WebApi.Cors
nugetパッケージ `" Microsoft.AspNet.WebApi.Cors "(version =" 5.1.0 ")をインストールします
WebApiConfig.csファイルに次の行を追加します
config.EnableCors(new EnableCorsAttribute("*", "*", "*"));