معرفی Web Service درASP.NET

جمعه 10 اردیبهشت 1395

در این مقاله با مفهوم وب سرویس ها (Web Service ) و چگونگی به کارگیری آن ها در یک برنامه ی ASP.NET آشنا می شویم . مراحل ساخت برنامه همراه با توضیحات مربوطه در مقاله قرار داده شده اند.

معرفی Web Service درASP.NET

وب سرویس (web service) چیست؟

یک وب سرویس (web service) یک پلتفرم ارتباطی بین دو یا چند برنامه  با پلتفرم های مختلف است که به کاربر اجازه می دهد از web method های آن ها استفاده کند.

در معنایی که در بالا تعریف کردیم، از دو نکته ی مهم در web service ها استفاده کرده ایم . یکی از آن ها "برنامه ها با پلتفرم های مختلف" و دیگری web method است . بیایید چند نکته ی ابتدایی در این موارد را بررسی کنیم.

"برنامه هایی با پلتفرم های مختلف" به چه معناست؟

این عبارت به این معنا است که می توانیم یک web service را به هر زبانی که می خواهیم ، بنویسیم. مثل جاوا یا زبان های دیگر  و به این ترتیب وب سرویس می تواند در هر برنامه ی مبتنی بر .Net و همچنین در یک وب سرویس .Net دیگر و یا در برنامه های دیگر برای تبادل اطلاعات به کار گرفته شود.

web method به چه معناست؟

یک متد در web service همیشه با صفت [webMethod] شروع می شود. این کار به این معنی است که یک web method داریم که در همه جای برنامه در دسترس است .

برای درک بهتر این مساله، به شکل زیر دقت کنید. سپس آن را با هم بررسی خواهیم کرد.

در شکل بالا، نشان داده شده است که چگونه یک Asp.net Web Service در انواع مختلفی از برنامه ها می تواند به کار گرفته شود. این گفته به این معناست که ما می توانیم یک وب سرویس را به هر زبان دلخواه بنویسیم و سپس آن وب سرویس را در هر زبان دلخواه دیگری به کار بگیریم . یعنی وب سرویس ها در پلتفرم ها هیچ محدودیتی ندارند.

بیایید ساخت برنامه را شروع کنیم :

"Start" - "All Programs" - "Microsoft Visual Studio "-1

"File" - "New Project" - "C#" - "Empty Web Application"-2

3-یک نام برای وب سایت( "agetodays"  )انتخاب کنید و محل ذخیره سازی آن را مشخص کنید.

4-بر روی Solution Explorer کلیک راست کرده و گزینه ی "Add New Item" را انتخاب کنید. از پنجره ای که باز می شود بر روی وب سرویس کلیک کنید.

قالب Web Service  را انتخاب کنید . بعد از انجام این کار ، قسمت Solution Explorer مانند زیر خواهد بود :

سپس کلاس Webservice.cs را باز کنید و کد زیر را در آن بنویسید.

[WebMethod]  
public int converttodaysweb(int day, int month, int year)  
{  
DateTime dt = new DateTime(year, month, day);  
int datetodays = DateTime.Now.Subtract(dt).Days;  
return datetodays;  
}

در کد بالا یک متد عدد صحیح به نام converttodaysweb با سه پارامتر (روز-ماه-سال) ایجاد کرده ام که این عدد ها را از کاربر دریافت می کند.

بعد از این که یک شی از date time ایجاد کردم و متغیرهای مربوطه را از کاربر دریافت کردم، یک متد دیگر ایجاد می کنم که در آن تاریخ جاری گرفته می شود که در نهایت، اختلاف این دو به عنوان خروجی به کاربر نشان داده می شود.

بعد از انجام این مراحل، فایل webservice.cs مانند زیر خواهد بود :

using System;  
using System.Collections.Generic;  
using System.Web;  
using System.Web.Services;  
///<summary>  
/// Summary description for UtilityWebService  
///</summary>  
[WebService(Namespace = "http://tempuri.org/")]  
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]  
// To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line.   
// [System.Web.Script.Services.ScriptService]  
public class WebService: System.Web.Services.WebService   
{  
    public WebService()   
    {  
        //Uncomment the following line if using designed components   
        //InitializeComponent();   
    }  
    [WebMethod]  
    public int converttodaysweb(int day, int month, int year)  
    {  
        DateTime dt = new DateTime(year, month, day);  
        int datetodays = DateTime.Now.Subtract(dt).Days;  
        return datetodays;  
  
    }  
  
}  

حالا برنامه را اجرا کنید و خروجی را ببینید.

 

 

فایل های ضمیمه

برنامه نویسان

نویسنده 3355 مقاله در برنامه نویسان

کاربرانی که از نویسنده این مقاله تشکر کرده اند

در صورتی که در رابطه با این مقاله سوالی دارید، در تاپیک های انجمن مطرح کنید