対私は[WebMethod]
属性でマークされた方法では、.NET 3.5のaspx場所を持っています。 JSONを両方向に送信するjQueryを呼び出しています。これはすべて素晴らしいです。私の質問は、[ScriptMethod]
がメソッドに適用されたときに何をするのですか?私はこれを試したと同じ結果をもたらすようです。 ScriptMethod
とWebMethod
は同一で互換性がありますか、またはどちらか一方が提供していない機能性および/またはオーバーヘッドを提供していますか?一般に、私は自分自身がWebサービスを実装するために利用できるすべてのオプションと混同していると思います。それぞれの長所と短所が何であるかを知りたいと思います。WebMethod属性ScriptMethod
答えて
ScriptMethodAttribute属性はオプションです。ただし、クライアントスクリプトから呼び出せるメソッドには、System.Web.Services .. ::。WebMethodAttribute属性が適用されている必要があります。メソッドがScriptMethodAttributeでマークされていない場合、メソッドはHTTP POSTコマンドを使用して呼び出され、応答はJSONとしてシリアル化されます。スクリプトからこの設定を上書きすることはできません。
- http://msdn.microsoft.com/en-us/library/system.web.script.services.scriptmethodattribute.aspx
EDIT:WebMethod属性とScriptMethodは属性が競合していません。 ScriptMethodは上記のように付加的な注釈である可能性があります。
WebMethod = HTTP POSTで呼び出す... ScriptMethodを追加するとさらに何が得られますか?どちらもクライアントから呼び出すことができます...私はそれを取得しません。 –
は、次の2つのシナリオでScriptMethod属性を使用します。
- jqueryまたは他のajaxリクエストメカニズムを使用していますが、要求はPOSTではなくGETにします。
- XML形式の応答をjavaScriptで受け取りたいとします。
あなたは、上記の要件のいずれかを持っていない場合。 ajaxリクエストを使用してJSONレスポンスが必要な場合は、WebMethodを使用するだけです。
あなたはScriptService属性を使用しないときもう一つの混乱の要素は、まだここにあるのでしょうか?これは、Microsoft Ajax Clientスクリプトフレームワークを使用している場合に使用されます。この属性は、通常のオブジェクトと同様に関数を呼び出すことができるように、クライアントにプロキシオブジェクトを生成するようサーバーに指示します。 var MyRemoteObject = new RemoteObject();
MyRemoteObject.getMessage(....)
ScriptService属性を使用する場合でも、上記のシナリオでのみScriptMethod属性を追加する必要はありません。
私はScriptServiceとScriptMethodだけでWebサービスのように一緒に動作し、Webメソッドの属性属性と思ったので、それは初めで私に混乱しました。
- 1. WebサービスのWebMethod属性
- 2. asp.netのWebフォーム[WebMethod属性]
- 3. ScriptmethodはXML
- 4. 挿入するためのWebMethod属性がある.netwebservice
- 5. AJAX呼び出し - ASMXのWebMethod属性に型 'System.OutOfMemoryExceptionに' の
- 6. カスタム属性vs data- *属性
- 7. テキストボックスの値は条件ごとにここにWebMethod結果で正しくWebMethod属性の戻り値とラベル値の変更を
- 8. は、私が列挙型の配列を返すASP.NETのWebサービスのWebMethod属性を持つSOAPデシリアライズ
- 9. python:クラスの属性とインスタンスの属性
- 10. 欠落XML属性 - 属性の「バージョン」
- 11. HTML属性へのMVCモデル属性
- 12. Magento2属性グループ名属性コレクション
- 13. MT属性ファイルのKE属性
- 14. 属性
- 15. 属性
- 16. 属性
- 17. 属性
- 18. 属性
- 19. 属性
- 20. WebMethodのエラー
- 21. ASP.NET WebサービスWebMethod
- 22. Webサービスasp.net webmethod?
- 23. postshap:OnMethodBoundaryAspectとWebMethod
- 24. Jquery Ajax to [WebMethod]
- 25. [DataMember]属性と[IgnoreDataMember]属性を持つ属性がありません
- 26. Xcode Swift - 属性属性はフォント属性では機能しません
- 27. Backbone.jsモデルの従属属性
- 28. コアデータ属性の一意性
- 29. モデル属性が
- 30. TwoLineListItem - カスタム属性
大変ご質問ありがとうございます。 – JoshJordan