दिलचस्प पोस्ट
पायथन में, मैं एक स्ट्रिंग कैसे विभाजित कर सकता हूं और अलग-अलग रखता हूं? जब एमुलेटर में एक एंड्रॉइड एप्लिकेशन चल रहा है, तो मुझे कैसे पता लगा सकता है? टर्मिनल में जीआईटी स्टेटस की सूची से कैसे बाहर निकलना है? जावास्क्रिप्ट से एक्सीलरोमीटर / जीरोस्कोप डेटा तक कैसे पहुंचें? Windows सिस्टम में शेष बैटरी जीवन कैसे प्राप्त करें? JavaScript में ऑब्जेक्ट की एक सरणी से विशिष्ट मान कैसे प्राप्त करें? MySQL में एक को छोड़कर सभी कॉलम का चयन करें? RootViewController स्विच संक्रमण एनिमेशन पायथन के साथ फाइल में लिस्ट लिखना कैसे एक Redux स्टोर की स्थिति को रीसेट करें? पायथन कक्षा विधि डेकोरेटर w / स्वयं तर्क? किसी भी प्रकार से एक वैकल्पिक मूल्य कैसे खोलें? पायथन कोड क्या यह अल्पविराम ऑपरेटर है? CSS3 के साथ हेक्सागोनल पैटर्न दोहराते उत्पन्न करें निरंतर भाषण मान्यता एंड्रॉइड

ASP.NET MVC नियंत्रक के लिए jQuery अजाक्स पोस्टिंग सरणी

मुझे यहाँ कुछ याद आ रही है मुझे ये jQuery जावास्क्रिप्ट मिला है:

$.ajax({ type: "POST", url: "/update-note-order", dataType: "json", data: { orderedIds: orderedIds, unixTimeMs: new Date().getTime() } }); 

जहां orderedIds एक जावास्क्रिप्ट नंबर सरणी है (जैसे कि var orderedIds = [1, 2] )।

हैंडलिंग Controller विधि है:

 [HttpPost] public void UpdateNoteOrder(long[] orderedIds, long unixTimeMs) { ... } 

जब मैं UpdateNoteOrder() Debugger.Break() में एक Debugger.Break()UpdateNoteOrder() डाल दिया, तो आदेश दिया गया UpdateNoteOrder() वॉच विंडो में null है orderedIds ( unixTimeMs , हालांकि, एक संख्यात्मक मूल्य है।)

मैं $.ajax() orderedIds $.ajax() माध्यम से नंबर सरणी को कैसे पारित कर सकता हूं, जैसे कि orderedIds मेरे नियंत्रक में long[] ?

वेब के समाधान से एकत्रित समाधान "ASP.NET MVC नियंत्रक के लिए jQuery अजाक्स पोस्टिंग सरणी"

बस traditional पैरामीटर को true सेट करें:

 $.ajax({ type: "POST", url: "/update-note-order", dataType: "json", traditional: true, data: { orderedIds: orderedIds, unixTimeMs: new Date().getTime() } }); 

Jquery 1.4 के बाद से यह पैरामीटर मौजूद है क्योंकि ऑब्जेक्ट्स को क्वेरी मापदंडों में क्रमबद्ध करने के लिए तंत्र बदल गया है।

आपको आदेश दिया जाना चाहिए आदेश एक परम सरणी में है, या नियंत्रक इसे नहीं देखेंगे

 $.param({ orderedIds: orderedIds }); 

आपके कोड में:

 $.ajax({ type: "POST", url: "/update-note-order", dataType: "json", data: { orderedIds: $.param({ orderedIds: orderedIds }), unixTimeMs: new Date().getTime() } });