क्या मैं क्लाइंट-साइड जावास्क्रिप्ट से एएसपी.NET के माध्यम से सर्वर-साइड कोड में ऑब्जेक्ट भेज सकता हूं?क्या मैं क्लाइंट-साइड जावास्क्रिप्ट से एएसपी.NET के माध्यम से सर्वर-साइड कोड में ऑब्जेक्ट भेज सकता हूं?
उत्तर
हां। आप जेसन का उपयोग कर सकते हैं और पोस्ट कर सकते हैं। यदि आप jQuery का उपयोग कर रहे हैं तो आप सर्वर को तरफ पोस्ट करने के लिए $ .ajax का उपयोग कर सकते हैं। उम्मीद है की यह मदद करेगा।
हां। वेब विधि का उपयोग करने के लिए एक तरीका हो सकता है; उदाहरण के लिए:
- एक सेवा बनाएं
- तरह JavaScript विधि से कॉल:
DataService.Push(yourObject)
;
उदाहरण के लिए:
जावास्क्रिप्ट तरीके:
function btnGenerate_onclick(result) {
DataService.Push(getDataFromSomeDiv(), onGenerateReportComplete /*callback method*/);
//or
//DataService.Push(document.getElementById("myDiv").innerHTML, onGenerateReportComplete /*callback method*/);
}
function onGenerateReportComplete(result) {
alert("Success:" + result);
}
सेवा तरीके:
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.Web.Script.Services.ScriptService]
public class DataService : System.Web.Services.WebService
{
[WebMethod(EnableSession = true)] //If you want?
public bool Push(object someObject)
{
//var v = someObject as MyObjectClass;//Process object
return true;
}
}
संपादित करें: जावास्क्रिप्ट कैसे पता होगा सर्वर साइड DataService क्या है ?
इसे मार्कअप में वेब सेवा के संदर्भ की आवश्यकता होगी। उदाहरण के लिए निम्नलिखित की तरह:
<asp:ScriptManager ID="sm" runat="server">
<Services>
<asp:ServiceReference Path="DataService.asmx" />
</Services>
</asp:ScriptManager>
या आप page methods कॉलबैक का उपयोग कर सकते /।
आप कुछ चूक गए। जावास्क्रिप्ट कैसे पता चलेगा कि सर्वर-साइड डेटा सेवा क्या है? – VikciaR
अच्छा सवाल, संपादन देखें। –
ऐसा नहीं है। आप ऑब्जेक्ट को स्ट्रिंग पर क्रमबद्ध कर सकते हैं, उस स्ट्रिंग को ASP.NET पर भेजें और उसके बाद इसे दूसरी ओर एक ऑब्जेक्ट में परिवर्तित करें।
जेएसओएन इसके लिए एक अच्छा क्रमबद्धता प्रारूप है, और आप साधारण ऑब्जेक्ट्स को सीधे इसके आसपास के विभिन्न पुस्तकालयों में छोड़ सकते हैं (और listed in the penultimate section of the JSON homepage हैं)।
अधिक जटिल वस्तुओं के लिए, आपको उस डेटा के अवशेष बिट्स निकालने की आवश्यकता होगी जो आपको करने से पहले उन्हें फिर से बनाने के लिए आवश्यक है।
ASP.NET WebForms में मैं एक ScriptService का प्रयोग करेंगे:
चेकआउट इस नमूने: ASP.NET ScriptService deserialization problem with derived types
: http://msdn.microsoft.com/en-us/magazine/cc163499.aspxGenerateScriptType
विशेषता अगर आप पास करना चाहते हैं/सेवा करने के लिए छेद वस्तुओं मिल इस्तेमाल किया जा सकता
[WebService(Namespace = "http://msdnmagazine.com/ws")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[GenerateScriptType(typeof(Object1))]
[GenerateScriptType(typeof(Object2))]
[ScriptService]
public class StockQuoteService : WebService
{
static Random _rand = new Random(Environment.TickCount);
[WebMethod]
public int GetStockQuote(string symbol)
{
return _rand.Next(0, 120);
}
}
आपका नमूना दिखाता है कि वेब सेवा को कैसे कॉल करें और एक मान पास करें, हालांकि यह किसी ऑब्जेक्ट को पास करने का तरीका नहीं दिखाता है (गुणों सहित)। –
बेन डॉटनेट एएसपीनेट वेबफॉर्म में स्क्रिप्ट सेवा का उपयोग करने के बारे में सही है। स्क्रिप्ट सेवा सजावट जेनरेटस्क्रिप्ट टाइप सजावटी यह सुनिश्चित करने के लिए महत्वपूर्ण है कि जटिल प्रकार जिसे आप उपयोग करना चाहते हैं, शामिल है। मैंने बेन को इस के अलावा उपयोगी होने के लिए लिंक किया: http://www.webreference.com/programming/asp-net-ajax/complex-data-types/index.html
यहां बताया गया है कि मैं वास्तव में क्या कर रहा हूं। सबसे पहले मैंने उस कस्टम प्रकार को परिभाषित किया जिसे मैं फ़ाइल के पीछे अपने कोड में उपयोग करना चाहता था।
namespace TestProject
{
public class SampleData
{
public int id { get; set; }
public string StartDate { get; set; }
public string EndDate { get; set; }
public SampleData()
{ }
}
public partial class SamplePage : System.Web.UI.Page
{
/* The rest of the SamplePage.aspx.cs file goes here */
}
}
तब मैं कोई WebMethod/ScriptMethod मेरी SamplePage कोड में पीछे इस तरह बनाया:
[WebMethod]
[ScriptMethod]
[GenerateScriptType(typeof(SampleData))]
public static bool EditReminder(SampleData data)
{
/* Server side code goes here */
return true;
}
फिर, क्लाइंट साइड पृष्ठ पर मैं प्रकार SampleData और पास की एक वस्तु बनाने के लिए कर रहा था कि इस तरह के पेजमाइड्स का उपयोग करना। नामस्थान शामिल करना न भूलें, यह आवश्यक है।
function some_javascript_function() {
var sample_data = new TestProject.SampleData()
sample_data.id = 1;
sample_data.StartDate = '6/24/1976';
sample_data.EndDate = '3/20/2012';
PageMethods.EditReminder(sample_data, OnEditReminderComplete)
}
function OnEditReminderComplete() {
if (result) alert("Success!");
else alert("Failure!");
}
इसके अलावा
, मत भूलना स्क्रिप्ट प्रबंधक शामिल हैं और इसे अपने पृष्ठ पर कहीं की तरह पेज तरीकों सक्षम करने के लिए: (उदाहरण के समझाने)
<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="true" />
- 1. क्लाइंटसाइड और सर्वरसाइड
- 2. मैं सॉकेट.मैट के माध्यम से कितना डेटा भेज सकता हूं?
- 3. मैं AJAX के माध्यम से "&" (एम्पर्सेंड) कैरेक्टर कैसे भेज सकता हूं?
- 4. क्या मैं सीधे ब्लूटूथ के माध्यम से arduino प्रोग्राम भेज सकता हूं?
- 5. मैं AJAX के माध्यम से php को सरणी कैसे भेज सकता हूं?
- 6. क्या मैं विशेषताओं के बजाय कोड के माध्यम से XMLRoot निर्दिष्ट कर सकता हूं?
- 7. मैं यूपीपी के माध्यम से PHP के साथ आईपी पते पर डेटा कैसे भेज सकता हूं?
- 8. क्या मैं सी # से आईआईएस तक एक खाली HTTP पोस्ट वेबआरक्वेट ऑब्जेक्ट भेज सकता हूं?
- 9. मैं .NET Framework के साथ SSL SMTP के माध्यम से ईमेल कैसे भेज सकता हूं?
- 10. मैं पर्ल के साथ जीमेल के माध्यम से मेल कैसे भेज सकता हूं?
- 11. क्या मैं जावास्क्रिप्ट के माध्यम से मोज़िला में कॉन्फ़िगर कर सकता हूं?
- 12. क्या मैं जावास्क्रिप्ट में गतिशील ऑब्जेक्ट नाम बना सकता हूं?
- 13. मैं फ़िल्टर से पहले पैरामीटर कैसे भेज सकता हूं?
- 14. अविश्वसनीय कोड सर्वरसाइड कैसे चलाएं?
- 15. मैं जावा से एक एसएमएस कैसे भेज सकता हूं?
- 16. मैं ब्राउज़र से http हटाना अनुरोध कैसे भेज सकता हूं?
- 17. मैं easyXDM के साथ AJAX पोस्ट के माध्यम से कुंजी-मूल्य जोड़े के रूप में जावास्क्रिप्ट ऑब्जेक्ट/सरणी कैसे भेज सकता हूं?
- 18. मैं कोको से एक HTML ईमेल कैसे भेज सकता हूं?
- 19. किसी भी तरह से मैं एसएमएस भेज सकता हूं?
- 20. मैं प्रोग्रामिंग के रूप में UILongPressGesture कैसे भेज सकता हूं?
- 21. मैं Google क्रोम में जावास्क्रिप्ट के माध्यम से सिस्टम कमांड कैसे लॉन्च कर सकता हूं?
- 22. एक्सकोड डीबग - क्या मैं डिस्सेप्लर कोड के माध्यम से स्टेपिंग को बाईपास कर सकता हूं
- 23. क्या मैं जावास्क्रिप्ट के माध्यम से एक गैर मानक सीएसएस संपत्ति का मूल्य ला सकता हूं?
- 24. मैं जावास्क्रिप्ट के माध्यम से एफएफ और क्रोम में डिफ़ॉल्ट होमपेज कैसे सेट कर सकता हूं?
- 25. क्या मैं निर्दिष्ट आईपी पते से .NET Framework के साथ webrequest भेज सकता हूं?
- 26. मैं जीमेल के माध्यम से एक संपूर्ण .Net प्रोजेक्ट को अटैचमेंट के रूप में कैसे भेज सकता हूं?
- 27. क्या मैं XDomainRequest के माध्यम से ठीक से बाइनरी डेटा पढ़ सकता हूं?
- 28. जावास्क्रिप्ट में 'हैशमैप' के माध्यम से लूप
- 29. मैं एक पायथन स्क्रिप्ट से jQuery पर JSON ऑब्जेक्ट कैसे भेज सकता हूं?
- 30. मैं ntsd -d के माध्यम से windbg में स्रोत कोड कैसे दिखा सकता हूं?
क्या आप मुझे अधिक के बारे में Json बता सकते हैं? – Badr
यह एक अच्छा संदर्भ बिंदु है http://haacked.com/archive/2010/04/15/sending-json-to-an-asp-net-mvc-action-method-argument.aspx – ysrb