2012-01-09 8 views
60

MicrosoftAjax.jsMicrosoftMvcAjax.jsMicrosoftMvcValidation.jsは、現在のところASP.NET MVC 3として廃止されていますか?私はWeb上で多くの情報を見つけることができませんでしたが、私が読んだことは、これらのファイルがASP.NET MVC 1-2で使用され、jquery.validate.min.jsjquery.unobtrusive-ajax.min.jsjquery.validate.unobtrusive.min.jsに置き換えられたことを意味します。あれは正しいですか?引き続きMicrosoftファイルが必要ですか?ASP.NET MVC 3ではMicrosoftAjax.js、MicrosoftMvcAjax.js、およびMicrosoftMvcValidation.jsは廃止されましたか?

答えて

118

はい、すべてMicrosoft*ヘルパーはASP.NET MVC 3では時代遅れです。私にとっては、彼らはいつも時代遅れですが、少なくともマイクロソフトはこの役人を作ってjQueryに置き換えました。

2の新しい機能が最初UnobtrusiveJavaScriptEnabledある

<appSettings> 
    <add key="webpages:Version" value="1.0.0.0"/> 
    <add key="ClientValidationEnabled" value="true"/> 
    <add key="UnobtrusiveJavaScriptEnabled" value="true"/> 
</appSettings> 

が導入されています。つまり、新しいASP.NET MVC 3アプリケーションを作成するときにデフォルトで有効になっているweb.configでこの機能を有効にすると、Ajax.BeginFormAjax.ActionLinkなどのすべてのAjax.*ヘルパーは、それぞれHTML5のdata- *属性をそれぞれ送出しますjavascriptとマークアップを混ぜる代わりに、DOM要素を使用します。次に、jquery.unobtrusive-ajax.jsスクリプトをページに追加してください。これらの属性を解析し、jQueryを使用して目立たないようにAJAXifyします。

2番目の値はClientValidationEnabledで、デフォルトで有効になっています。同じように控えめなjavascriptが動作するのと同じように、この設定を有効にすると、入力フィールドを生成するすべてのヘルパーがHTML5 data- *属性を出力します。次に、_Layout.cshtmlのように、jquery.validate.jsjquery.validate.unobtrusive.jsのスクリプトを使用して機能させます。 は、彼らは、この順序で表示されなければならない、とjQueryがロードされた後、彼らはでなければなりません:

<script src="@Url.Content("~/Scripts/jquery-1.7.1.min.js")" type="text/javascript"></script> 
<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script> 
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script> 

のでASp.NET MVC 3にあなたはについてのすべてのMicrosoft*スクリプトを忘れることができます。あなたのサイトからそれらを削除してください。これらのファイルを削除します。

+0

ダーリンありがとうございます。 **注意** **最新バージョンの 'jquery-1.10.2.min.js'は動作しません。[使用](http://stackoverflow.com/a/30213504/2218697)' jquery-1.7.1 .min.jsは私のために働いた。 – stom

6

ライブラリを使用している場合は、MicrosoftAjax機能のみが必要です。 Microsoft AJAXは、提供されているJQueryライブラリにはない機能をいくつか提供しています(ただし、プラグインで複製することはできます)。アプリケーション内でMicrosoft AJAXを使用していない場合は、これらのスクリプトへの参照をすべて削除することができます。

+0

実際にそれらを使用していますか? –

+0

これは別のJavaScriptライブラリです.JQuery UIに似ています。詳細はhttp://www.asp.net/ajaxlibrary/act_tutorials.ashxをご覧ください。私は、マイクロソフトが徐々にMS AJAXへの貢献から離れ、代わりにJQuery(テンプレートライブラリなど)に貢献したと考えています。 – LewisBenge

+0

これは私がそれを使用していたかどうか知っていますか? –

関連する問題