طریقه ساخت json توسط asp.net webform


 

 

وب سایت شما حتما باید ورژن 4.5 باشد ، درصورتیکه وب سایت شما با نسخه دیگری ساخته شده باشد باید ورژن آن را عوض کنید 

 

 

 

   <system.web>

      <compilation debug="true" targetFramework="4.5" />

      <httpRuntime targetFramework="4.5" />

    </system.web>

2-

اضافه کردن refrence   که در فهرست به نام WCF Service ثبت شده است .

در این پروژه اسم فایل را MyService.svcنوشته ایم :

 

 

اضافه کردن فایل مربوط به سرویس

 

جستجوی : ServiceModel و انتخاب System.ServiceModel.Web 

و اضافه کردن System.Runtime.Serialization

 

 

 

تنظیمات وب کانفیگ دقیقا بر اساس منطق زیر

 :

<system.serviceModel>

    <services>

      <service name="WebApplication2.MyService">

        <endpoint address="../MyService.svc" binding="webHttpBinding" contract="WebApplication2.IMyService" behaviorConfiguration="webBehaviour"/>

      </service>

    </services>

    <behaviors>

    <endpointBehaviors>

      <behavior name="webBehaviour">

        <webHttp/>

      </behavior>

    </endpointBehaviors>

    <serviceBehaviors>

      <behavior name="">

        <serviceMetadata httpGetEnabled="true"/>

        <serviceDebug includeExceptionDetailInFaults="false"/>

      </behavior>

    </serviceBehaviors>

  </behaviors>

    <serviceHostingEnvironment aspNetCompatibilityEnabled="true"

      multipleSiteBindingsEnabled="true" />

  </system.serviceModel>

 

 

 

 

اضافه کردن using System.ServiceModel.Web;  به فایل IMyService.cs و MyService.svc

 

 

تعریف کلاس kwStatus برای خروجی تابع که نتیجه و پیغام را بر میگرداند .

این کلاس هر کجا می تواند نوشته شود فقط ویژگی     DataContract     را باید داشته باشد و پس از ان متد LOGIN را در MyService اضافه می کنیم :

using System;

using System.Collections.Generic;

using System.Linq;

using System.Runtime.Serialization;

using System.ServiceModel;

using System.ServiceModel.Web;

using System.Text;

 

namespace WebApplication2

{

 

 

    [DataContract]

    public class kwStatus

    {

 

        public kwStatus(string _status, string msg)

        {

            this.Status = _status;

            this.msg = msg;

        }

        [DataMember]

        public string Status { get; set; }

        [DataMember]

        public string msg { get; set; }

    }

 

    public class MyService : IMyService

    {

 

        public void DoWork()

        {

        }

 

 

        public kwStatus login(string Username, string Password)

        {

            kwStatus _kwStatus;

          

            if (Username=="karnaweb" && Password=="123456")

            {

                _kwStatus = new kwStatus("ok", "خوش آمدید");

            }

            else

            {

 

                _kwStatus = new kwStatus("fail", "نام کاربری یا رمز ورود اشتباه است");

 

            }

            return _kwStatus;

        }

 

 

 

    }

}

 

 

 

 

حالا متند Login را باید در فایل IMyService.cs  بازنویسی کنیم :

 

using System;

using System.Collections.Generic;

using System.Linq;

using System.Runtime.Serialization;

using System.ServiceModel;

using System.ServiceModel.Web;

using System.Text;

 

namespace WebApplication2

{

 

 

 

    // NOTE: You can use the "Rename" command on the "Refactor" menu to change the interface name "IMyService" in both code and config file together.

    [ServiceContract]

    public interface IMyService

    {

        [OperationContract]

        void DoWork();

 

 

 

        [OperationContract]

        [WebInvoke(Method = "GET", ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Wrapped, UriTemplate = "login/{Username}/{Password}")]

        kwStatus login(string Username, string Password);

 

 

    }

}

 

 

 

حالا پروژه را اجرا کنید و ساختار URL را بر اساس UriTemplate که در بالا وارد کرده ایم + آدرس لوکال هاست :

 

http://localhost:28022/MyService.svc/login/karnaweb/123456

 

دانلود سورس کد 



به مطلب ارائه شده امتیاز بدهید



Arun

هادی جعفری

اگر شما هم می خواهید در وب سایت ما مطلب بگذارید می توانید از طریق فرم استخدام همکاری خود را اعلام کنید

  • مطلب چه طور بود؟ سوالی در این باره دارید؟ در بخش نظرات مطرح نمایید.

نظر سنجی

بهترین سرویس آمار بازدیدکنندگان کدام است ؟


نمایش نتیجه ها



52رای