فراخوانی وب متد با استفاده از AngularJs, AJAX و JSON در ASP.Net
دوشنبه 17 آبان 1395در این مقاله ما نحوه فراخوانی وب متد (WebMethod یا PageMethod) را با استفاده از AngularJS ، AJAX و JSON در ASP.Net با استفاده از #C به همراه مثال برای شما توضیح خواهیم داد.
WebMethod :
در اینجا WebMethod با استفاده از AngularJS ، AJAX و JSON فراخوانی خواهد شد.
در داخل WebMethod ،مقدار پارامتر نام، از متد AngularJS برمیگردد و به وب متد میرسد.
[System.Web.Services.WebMethod]
public static string GetCurrentTime(string name)
{
string message = "Hello ";
message += name;
message += "\nCurrent Time: ";
message += DateTime.Now.ToString();
return message;
}
فراخوانی وب متد ( WebMethod ) با استفاده از AngularJS ، AJAX و JSON در ASP.Net :
Html زیر شامل یک div است که برای دستورات ng-app و ng-controller از AngularJS اختصاص داده شده است.
این div شامل یک TextBox و یک Button است که دکمه برای AngularJS ng-click تعریف شده است.
هنگامی که دکمه کلیک میشود تابع ButtonClick اجرا میشود.
در داخل تابع ButtonClick سرویس http$ برای ایجاد یک فراخوانی ajax در ASP.Net WebMethod استفاده شده است.
$http service شامل متد ها و property های زیر است.
property ها :
1-تابع - نوع متد HTTP Request . کهGET یاPOST است.
2-URL - ادرس WebMethod
3-نوع داده - فرمت داده که میتواند XML یا JSON
4- داده(data) - پارامتر هایی که به WebMethod اارسال شده اند.
5-هدر - لیست هدر ها برای HTTP Request
Event Handler :
1-success - این رویداد یک trigger است هنگامی که فراخوانی ajax با موفقیت انجام شود اجرا میشود.
2- error - این رویداد یک trigger است که هنگامی که فراخوانی ajax با خطا مواجه میشود اجرا میشود.
پاسخ از فراخوانی ajax با فرمتjson به رویداد success سرویس http$ میرسد و در آخر نتیجه با استفاده از JavaScript به صورت پیام نمایش داده میشود.
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.9/angular.min.js"></script>
<script type="text/javascript">
var app = angular.module('MyApp', [])
app.controller('MyController', function ($scope, $http, $window) {
$scope.ButtonClick = function () {
var post = $http({
method: "POST",
url: "Default.aspx/GetCurrentTime",
dataType: 'json',
data: { name: $scope.Name },
headers: { "Content-Type": "application/json" }
});
post.success(function (data, status) {
$window.alert(data.d);
});
post.error(function (data, status) {
$window.alert(data.Message);
});
}
});
</script>
<div ng-app="MyApp" ng-controller="MyController">
Name:
<input type="text" ng-model="Name" />
<br />
<br />
<input type="button" value="Submit" ng-click="ButtonClick()" />
</div>
خروجی :


- ASP.net
- 2k بازدید
- 3 تشکر