ایجاد Web Service برای بازگرداندن داده های XML و JSON
چهارشنبه 9 دی 1394در این مقاله قصد داریم نحوه ایجاد Web Service را در NET. بررسی کنیم و برای آن متدهایی که داده را به صورت XML و JSON باز می گردانند، پیاده سازی کنیم.
در این مقاله قصد داریم نحوه ایجاد Web Service را در NET. بررسی کنیم و برای آن متدهایی که داده را به صورت XML و JSON باز می گردانند پیاده سازی کنیم.
در ابتدا به نحوه ایجاد Web Service می پردازیم.
یک پروژه MVC به صورت Empty ایجاد کنید.
به آن یک Web Service با نام webservice1 اضافه کنید.
Connection String یا رشته اتصال را به صورت زیر در Web.Config تنظیم کنید.
<connectionStrings> <add name="Connection" connectionString="Data Source=.;Initial Catalog=Timesheet;User ID=sa;Password=123" providerName="System.Data.SqlClient"/> </connectionStrings>
و منابع System.Data و System.Data.SqlClient و System.Configuration را اضافه کنید.
جدول Employee را در دیتابیس به صورت زیر ایجاد کنید.
/****** Object: Table [dbo].[Employee] Script Date: 09-12-2015 23:40:32 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[Employee]( [EmpId] [int] IDENTITY(1, 1) NOT NULL, [EmpFirstName] [nvarchar](50) NULL, [EmpLastName] [nvarchar](50) NULL, [DeptId] [int] NULL, CONSTRAINT [PK_Employee] PRIMARY KEY CLUSTERED ([EmpId] ASC) WITH ( PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON ) ON [PRIMARY] ) ON [PRIMARY] GO
متد زیر را در web Service خود اضافه کنید. این متد جزئیات کارمندان را در فرمت XML نشان خواهد داد.
[WebMethod] public DataSet getEmp() { string sql = "SELECT [EmpId],[EmpFirstName],[EmpLastName],[DeptId] FROM Employee"; SqlDataAdapter da = new SqlDataAdapter(sql, ConfigurationManager.ConnectionStrings["Connection"].ToString()); DataSet ds = new DataSet(); da.Fill(ds); return ds; }
برنامه را ذخیره و اجرا کنید. خروجی به صورت زیر خواهد بود .
بر روی invoke کلیک کنید.
نتیجه را که شامل اطلاعات کارمندان است به صورت XML نشان می دهد.
اکنون برای بازگرداندن داده ها به صورت JSON ، از Nuget Manager ، فایل newtonsoft.json را نصب کنید. برای این کار به Tools سپس NuGet Pakage Manager رفته و بر روی Pakage Manager console کلیک کنید.
دستور زیر را در آن وارد کنید.
Install-Package Newtonsoft.Json
منبع Newtonsoft.Json به پروژه شما اضافه خواهد شد.
اکنون منبع آن را در web service اضافه کنید.
متد GetEmployee را همانند getemp ایجاد کنید. تنها تفاوت آن در استفاده از jsonConvert.Serializateobject برای Serialize کردن داده ها است.
[WebMethod] public string getEmployee() { string sql = "SELECT [EmpId],[EmpFirstName],[EmpLastName],[DeptId] FROM Employee"; SqlDataAdapter da = new SqlDataAdapter(sql, ConfigurationManager.ConnectionStrings["Connection"].ToString()); DataSet ds = new DataSet(); da.Fill(ds); return JsonConvert.SerializeObject(ds, Newtonsoft.Json.Formatting.Indented); }
اکنون برنامه را اجرا کنید و getEmployee را invoke کنید.
داده ها را در فرمت JSON نمایش می دهد.
- ASP.net MVC
- 3k بازدید
- 3 تشکر