Saturday, 15 May 2010

javascript - pass data from http request to C# controller -


सेवा

  comaxApp.factory ('user', फ़ंक्शन ($ http) {return} {login: function (loginInfo) {$ http ({url: './data/LogIn', विधि: "POST", डेटा: लॉगिन इवेंट, हेडर: {'Content-type': 'application त्रुटि (फ़ंक्शन (डेटा, स्थिति, हेडर, कॉन्फ़िग) {$ scope.status =} {/} {{$ scope.users = data.users;}) स्थिति + '' + हेडर;});}};});  

नियंत्रक

  $ scope.login = function () {var loginInfo = {"user": "admin", "पासवर्ड": "123"}; LoginInfo = JSON.stringify (लॉगिनइन्फो); User.login (loginInfo)। तब (फ़ंक्शन (उपयोगकर्ता) {$ scope.users = users.data;}, फ़ंक्शन (स्थिति) {}); };  

MVC नियंत्रक

  सार्वजनिक स्ट्रिंग लॉग इन (स्ट्रिंग लॉगिनइन्फो) {var obj = new JavaScriptSerializer (); Var परिणाम = obj.DeserializeObject (loginInfo); Var db = नया comaxDataEntities (); Var linq = db.accounts.Where (यू = & gt; u.userName == loginInfo); Var useraccount = linq.FirstOrDefault & lt; खाता & gt; (); Var javascriptSerializer = नया JavaScriptSerializer (); स्ट्रिंग jsonString = javascriptSerializer.Serialize (useraccount); वापसी jsonString; }  

हे मेरी समस्या है, जब मैं डेटा को सी # नियंत्रक को पास करता हूं, मेरा लॉगिन इन्फोट रिक्त पेलोड ठीक है, और logify stringify दिखाएं, लेकिन मेरी विधि logInfo । कृपया मेरी सहायता करें कि मैं सी # भाग में नया हूँ

आपको सेवा को सर्वर को तारयुक्त डाटा देना चाहिए, जैसा कि आपको JSON.stringify ({loginInfo: loginInfo}) पर स्ट्रिंग के रूप में पैरामीटर घोषित किया जाता है

CODE

  $ Http ({url: './data/LogIn', विधि: "पोस्ट", डेटा: JSON.stringify ({loginInfo: loginInfo}), हेडर: {'Content-type': 'application / json'}} ) .success (फ़ंक्शन (डेटा, स्थिति, हेडर, कॉन्फ़िग) {$ scope.users = data.users;})। त्रुटि (फ़ंक्शन (डेटा, स्थिति, शीर्षलेख, कॉन्फ़िग) {$ scope.status = status + '' + हेडर;});  

अधिक बेहतर तरीके से मैं सर्वर साइड पर लॉगिन इनफ़ो वर्ग बनाना चाहूंगा, जो सीधे कक्षा में मैप की जाती है, आपको इसे डी-सीरियल करने की आवश्यकता नहीं होगी।


No comments:

Post a Comment