Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 103,659

HOME > บทความจากสมาชิก > ASP.NET การสร้าง Web Service และการเรียกใช้งาน Web Service ด้วย ASP.NET แบบ Step by Step



 

ASP.NET การสร้าง Web Service และการเรียกใช้งาน Web Service ด้วย ASP.NET แบบ Step by Step

ASP.NET การสร้าง Web Service และการเรียกใช้งาน Web Service ด้วย ASP.NET แบบ Step by Step หลายคนคงจะเข้าใจความหมายของคำว่า Web Service แต่ไม่รู้ว่ามันทำงานยังไง และจะเรียกใช้งานยังไง ถ้าจะให้เข้าใจง่าย ๆ Web Service เปรียบเสมือนช่องทางสำหรับการแลกเปลี่ยนข้อมูลระว่าง Server ต่อ Server หรือ Server ต่อ Client ซึ่งเว็บที่จะเปิดให้บริการ Web Service จะต้องทำช่องทางที่เว็บอื่น ๆ จะสามารถเข้ามาเรียกใช้งานได้ ข้อมูลที่แลกเปลี่ยนกันอาจจะเป็นข้อมูลต่าง ๆ เช่น ธนาคารแห่งประเทศไทย อาจจะเปิดช่องทางสำหรับการอ่านค่าอัตราแลกเปลี่ยน โดยกำหนดให้ Client จะต้องส่งค่า Currency และ Date (เช่น USD , 30-Apr-2012) ที่จะอ่านค่าอัตราแลกเปลี่ยน ซึ่งเมื่อ Client เรียก Web Service จะต้องโยนค่า Argument ที่เป็น Currency และ Date เข้าไปได้อีกด้วย


Screenshot

ASP.NET Web Service


ASP.NET Web Service


เริ่มต้นการสร้าง Web Service

การทำงานของ Web Service แบ่งออกเป็น 2 ส่วนด้วยกันคือ Web Service ฝั่ง Server และ Client ที่ทำหน้าที่เรียกใช้งาน Web Service


Web Service ฝั่ง Server

ASP.NET Web Service

สร้าง Project ใหม่เลือกเป็น ASP.NET Web Service Application และกำหนดชื่อเป็น WebService_Server








ASP.NET Web Service

ในการสร้าง URL สำหรับเรียก Web Service นั้นจะต้องสร้างไฟล์นามสกุล .asmx เช่น Service1.asmx ตอนที่เรียกใช้จะได้ Service URL เป็น

http://server-name/Service.asmx


ซึ่งเราสามารถเขียน Method หรือ Property ต่าง ๆ ใส่ไว้ในไฟล์ Service.asmx ในตัวอย่างนี้จะสร้างชื่อว่า Service1 และ Method ที่ชื่อว่า HelloWorld รับค่า strName และส่งกลับ "Hello World Khun ( " & strName & " )"

- VB.NET

Service1.asmx.vb
Imports System.Web.Services
Imports System.Web.Services.Protocols
Imports System.ComponentModel

' To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line.
' <System.Web.Script.Services.ScriptService()> _
<System.Web.Services.WebService(Namespace:="http://tempuri.org/")> _
<System.Web.Services.WebServiceBinding(ConformsTo:=WsiProfiles.BasicProfile1_1)> _
<ToolboxItem(False)> _
Public Class Service1
    Inherits System.Web.Services.WebService

    <WebMethod()> _
    Public Function HelloWorld(ByVal strName As String) As String
        Return "Hello World Khun ( " & strName & " )"
    End Function

End Class


- C#

Service1.asmx.cs
using Microsoft.VisualBasic;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using System.Diagnostics;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.ComponentModel;

// To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line.
// <System.Web.Script.Services.ScriptService()> _
[System.Web.Services.WebService(Namespace = "http://tempuri.org/")]
[System.Web.Services.WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[ToolboxItem(false)]
public class Service1 : System.Web.Services.WebService
{

	[WebMethod()]
	public string HelloWorld(string strName)
	{
		return "Hello World Khun ( " + strName + " )";
	}

}


เมื่อเสร็จแล้วให้ทดสอบการรัน จะขึ้นหน้าจอดังรูป

ASP.NET Web Service

แสดงหน้าจอของ Web Service ที่ประกอบด้วย Method ชื่อว่า HelloWorld

ช่องทางเรียก Service Name
http://localhost:5377/Service1.asmx



ASP.NET Web Service

ทดสอบเรียก Method ที่ชื่อว่า HelloWorld โดยกรอกชื่อเข้าไป

ASP.NET Web Service

Web Service จะมีการ Return ค่าตามที่กำหนด

ASP.NET Web Service

เมื่อ View Source ในรูปแบบของ XML

เมื่อได้ Web Service ที่ให้บริการแล้ว เราสามารถเขียนโปรแกรมทำการเรียก Web Service ใช้งาน โดย Application ที่เรียกใช้อาจจะเขียนด้วย ASP.NET หรือ Windows Form Application ใน .NET Framework หรือภาษาอื่น ๆ ที่นอกเหนือจาก .NET เช่น PHP หรือ JSP ก็สามารถทำได้เช่นเดียวกัน





Web Service ฝั่ง Client

ทดสอบการเรียกใช้งาน Web Service ด้วย ASP.NET Web Application

ASP.NET Web Service

สร้าง ASP.NET Web Application ธรรมดา กำหนดชื่อเป็น WebService๘Client


ASP.NET Web Service

เปิดไฟล์ Default.aspx ขึ้นมา สร้าง Control ดังรูป


ASP.NET Web Service

คลิกขวาที่ Project เลือก Add Web Reference


ASP.NET Web Service

ใส่ URL ของ Web Service (กลับไปดูขั้นตอนการสร้าง Web Service Server) และเลือก Go


ASP.NET Web Service

ถ้า URL ของ Web Service สามารถเรียกใช้งานได้ จะปรากฏหน่าจอดังรูป ให้กำหนดชื่อ Web reference name ของ Web Service ที่จะเรียกใช้งานบน Project


ASP.NET Web Service

แสดง Web Reference ของ Web Service ที่ได้เรียกเข้ามาใน Project

กลับมาที่ไฟล์ Default.aspx สร้าง Event ของ Button

    Protected Sub btnOK_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnOK.Click
        Dim mySer As New myService.Service1
        Me.lblResponse.Text = mySer.HelloWorld(Me.txtName.Text)
    End Sub


เรียก Class ที่ชื่อว่า myServer และ Method ชื่อว่า Service1

Code ทั้งหมด


Default.aspx
<%@ Page Language="vb" AutoEventWireup="false" CodeBehind="Default.aspx.vb" Inherits="WebService_Client._Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    
        <asp:Label ID="lblName" runat="server" Text="Please Input Your name :"></asp:Label>
&nbsp;<asp:TextBox ID="txtName" runat="server"></asp:TextBox>
&nbsp;<asp:Button ID="btnOK" runat="server" Text="OK" />
        <br />
        <br />
        <asp:Label ID="lblResponse" runat="server"></asp:Label>
    
    </div>
    </form>
</body>
</html>


- VB.NET

Default.aspx.vb
Partial Public Class _Default
    Inherits System.Web.UI.Page

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

    End Sub

    Protected Sub btnOK_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnOK.Click
        Dim mySer As New myService.Service1
        Me.lblResponse.Text = mySer.HelloWorld(Me.txtName.Text)
    End Sub

End Class


- C#

Default.aspx.cs
using Microsoft.VisualBasic;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using System.Diagnostics;
public partial class _Default : System.Web.UI.Page
{


	protected void Page_Load(object sender, System.EventArgs e)
	{
	}

	protected void btnOK_Click(object sender, EventArgs e)
	{
		myService.Service1 mySer = new myService.Service1();
		this.lblResponse.Text = mySer.HelloWorld(this.txtName.Text);
	}

}



ทดสอบการรันและเรียก Web Service ของ Client


Screenshot

ASP.NET Web Service

จะเห็นว่า Client มีการเรียก Web Service โดยทำการ Call Method ที่ชื่อว่า HelloWord และส่งค่า Me.txtName.Text และเมื่อฝั่ง Web Service Server ได้รับก็จะทำการ Return "Hello World Khun ( " & strName & " )" ค่าดังรูป













Windows Form Application ฝั่ง Client

กรณีเขียนร่วมกับ Windows Form Application


ASP.NET Web Service

สร้าง Windows Form Application

ASP.NET Web Service

ออกแบบ Form ดังรูป

ASP.NET Web Service

คบิกขวาที่ Project เลือก Add Service Reference

ASP.NET Web Service

ใส่ URL ของ Web Service

http://localhost:5377/Service1.asmx


คลิกที่ Go กรอกชื่อ NameSpace ของ Web Service

ASP.NET Web Service

แสดง Service References

กลับมาที่ Form สร้าง Event Button โดยกำหนด Code ดังนี้

-VB.NET

Form.vb
Public Class Form1

    Private Sub btnOK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOK.Click
        Dim mySer As New myService.Service1SoapClient
        Me.lblResponse.Text = mySer.HelloWorld(Me.txtName.Text)
    End Sub

End Class


- C#

Form.cs
public class Form1
{

	private void btnOK_Click(System.Object sender, System.EventArgs e)
	{
		myService.Service1SoapClient mySer = new myService.Service1SoapClient();
		this.lblResponse.Text = mySer.HelloWorld(this.txtName.Text);
	}

}


Screenshot

ASP.NET Web Service


เพิ่มเติมสำหรับ Windows Form Application

กรณีที่ต้องการเรียกใช้งาน Web Service ในส่วนของ Windows Form Application ให้เรียกแบบ Add Web Reference

Windows Form Application Add Web Reference

ตรง Add Service Reference จะมีปุ่มให้เลือก Advanced....

Windows Form Application Add Web Reference

คลิกเลือก Add Web Reference

Windows Form Application Add Web Reference

หน้าจอสำหรับ Add Web Reference ซึ่งสามารถเลือกรูปแบบและ คำสั่งจะเหมือนในส่วนของ ASP.NET Web Application


Download Code !!




บทความอื่น ๆ ที่เกี่ยวข้อง
Go to : ASP.NET กับ Web Service การเขียนเว็บเซอร์วิสดึงข้อมูลจาก Database ผ่าน DataSet และ DataTable
Go to : รบกวนขอความรู้เรื่อง dataset กับ Webservice หน่อยครับ
Go to : ดึงข้อมูลจาก Webservice มาแสดงใน Webpage ยังไงครับ
Go to : VB.NET รบกวนถามการเขียน Web Service ให้สามารถ Return ค่าในลักษณะของ DataSet ครับ


   
Share
Bookmark.   

  By : TC Admin
  Article : บทความเป็นการเขียนโดยสมาชิก หากมีปัญหาเรื่องลิขสิทธิ์ กรุณาแจ้งให้ทาง webmaster ทราบด้วยครับ
  Score Rating :
  Create Date : 2012-04-30
  Download : No files
Sponsored Links
รู้จัก Composer คืออะไร การติดตั้งบน PHP Composer  เช่น XAMPP , Appserv และอื่นๆ
รู้จัก Composer คืออะไร การติดตั้งบน PHP Composer เช่น XAMPP , Appserv และอื่นๆ
รู้จัก Composer คืออะไร การติดตั้งบน PHP Composer เช่น XAMPP , Appserv และอื่นๆ
Rating : Update : 2017-03-18 22:41:17
C# DataGridView + OpenFileDialog แบบบ้านๆ
C# DataGridView + OpenFileDialog แบบบ้านๆ
วันนี้จะขอนำเสนอ การเพิ่ม DataGridViewTextBoxColumn แบบมีปุ่มกด พอดีมีวันหนึ่ง QC document มาบอกว่า ตารางอยากให้กดเลือกไฟล์ได้เลย ตอนแรกก็งงแต่คิดไปคิดมามันก็น่าจะทำได้นี่นา ก็เลยลองหาว่าธี เพิ่ม DataGridViewTextBoxColumn แบบมีปุ่มกด เพื่อ select path ได้
Rating : Update : 2016-06-02 11:01:01
รู้จัก Entity Framework (EF) คืออะไร ใช้ทำอะไร และมีประโยชน์อย่างไรบน .Net Framework
รู้จัก Entity Framework (EF) คืออะไร ใช้ทำอะไร และมีประโยชน์อย่างไรบน .Net Framework
การพัฒนา Application ด้วย .Net Framework เพื่อใช้งานทั่ว ๆ ไป การติดต่อกับ Database ถือเป็นหัวใจหลักในการพัฒนาโปรแกรม รองจากการวางโครงสร้างของ Application และจากประสบการณ์การเขียนโปรแกรมและผ่านโปรเจคมามาหลายตัว ทั้งขนาดเล็กคนเดียว หรือ 2-3 คน
Rating : Update : 2015-11-28 07:02:51
Windows Form กับ OpenFileDialog : การเปิด Browse และอัพโหลด Save ไฟล์ (VB.Net,C#)
Windows Form กับ OpenFileDialog : การเปิด Browse และอัพโหลด Save ไฟล์ (VB.Net,C#)
ตัวอย่างการใช้ Windows Form กับ OpenFileDialog เพื่อเปิด Browse และอัพโหลด Save ไฟล์ลงในโฟเดอร์ของ Application
Rating : Update : 2017-03-24 17:36:22
SVN : Visual Studio การ Add Item และ Commit หรือ Update ไปยัง SVN
SVN : Visual Studio การ Add Item และ Commit หรือ Update ไปยัง SVN
หลังจากที่ได้ติดตั้ง Plugin for Visual Studio และทำการเชื่อมต่อกับ SVN Server เรียบร้อยแล้ว ในหัวข้อนี้เราจะมาเริ่มต้นการใช้งาน Visual Studio กับฟีเจอร์พื้นฐานของ SVN ที่จะเข้ามาจัดการกับ Subversion หรือ Source Version Control
Rating : Update : 2015-11-19 12:58:20
PHP การทำระบบ login ด้วย mysqli และการเข้ารหัส md5
PHP การทำระบบ login ด้วย mysqli และการเข้ารหัส md5
การทำระบบ login ด้วย mysqli และการเข้ารหัส md5
Rating : Update : 2016-03-29 09:19:41
ตอนที่ 15 : PHP เรียกใช้ EXEC/CALL - SQL Server Stored Procedure ด้วย sqlsrv และ pdo
ตอนที่ 15 : PHP เรียกใช้ EXEC/CALL - SQL Server Stored Procedure ด้วย sqlsrv และ pdo
ในหัวข้อนี้เราจะมาเรียนรู้วิธีการเรียกใช้งาน Stored Procedure ของ SQL Server Database ด้วย PHP ซึ่งในการเรียกใช้งาน Stored Procedure จะต้องใช้ function ของ sqlsrv หรือในฟังก์ชั่นรุ่นใหม่ ๆ เช่น PDO ส่วนการเรียกนั้น เราสามารถใช้คำสั่ง EXEC procedure_name() ได้ทันที
Rating : Update : 2015-11-14 07:52:14
ThaiCreate.Com Forum




Comunity Forum Free Web Script
Jobs Freelance Free Uploads
Free Web Hosting Free Tools

สอน PHP ผ่าน Youtube ฟรี
สอน Android การเขียนโปรแกรม Android
สอน Windows Phone การเขียนโปรแกรม Windows Phone 7 และ 8
สอน iOS การเขียนโปรแกรม iPhone, iPad
สอน Java การเขียนโปรแกรม ภาษา Java
สอน Java GUI การเขียนโปรแกรม ภาษา Java GUI
สอน JSP การเขียนโปรแกรม ภาษา Java
สอน jQuery การเขียนโปรแกรม ภาษา jQuery
สอน .Net การเขียนโปรแกรม ภาษา .Net
Free Tutorial
สอน Google Maps Api
สอน Windows Service
สอน Entity Framework
สอน Android
สอน Java เขียน Java
Java GUI Swing
สอน JSP (Web App)
iOS (iPhone,iPad)
Windows Phone
Windows Azure
Windows Store
Laravel Framework
Yii PHP Framework
สอน jQuery
สอน jQuery กับ Ajax
สอน PHP OOP (Vdo)
Ajax Tutorials
SQL Tutorials
สอน SQL (Part 2)
JavaScript Tutorial
Javascript Tips
VBScript Tutorial
VBScript Validation
Microsoft Access
MySQL Tutorials
-- Stored Procedure
MariaDB Database
SQL Server Tutorial
SQL Server 2005
SQL Server 2008
SQL Server 2012
-- Stored Procedure
Oracle Database
-- Stored Procedure
SVN (Subversion)
แนวทางการทำ SEO
ปรับแต่งเว็บให้โหลดเร็ว


สุดยอด Source Code V2.0
 

แจ้งชำระเงิน/โอนเงิน
 

Hit Link
   


Acc : thaicreate@hotmail.com










Load balance : Server 03
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2017 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
for Contact Us : [Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 , 084-715-5121 อัตราราคา คลิกที่นี่