> 백엔드 개발 > C#.Net 튜토리얼 > .NET에서 WebService 서비스 생성 분석 예시(그림 및 텍스트)

.NET에서 WebService 서비스 생성 분석 예시(그림 및 텍스트)

黄舟
풀어 주다: 2017-05-21 11:21:37
원래의
3002명이 탐색했습니다.

이 글에서는 주로 WebService 서비스의 간단한 인스턴스를 생성하기 위한 .NET C#을 소개하며, 관심 있는 친구들은

웹 서비스를 참고할 수 있는 애플리케이션입니다. 프로그래밍 가능을 기반으로 하며 분산 상호 운용 가능한 애플리케이션을 개발하는 데 사용됩니다.

WebService의 특징은 다음과 같습니다.

1. 🎜>XML(Standard Universal Markup Language)을 데이터 상호 작용 형식으로 사용합니다.

2. 크로스 플랫폼이기 때문에 로컬 애플리케이션이 네트워크에 연결되어 XML을 구문 분석할 수 있는 한 데이터 교환이 가능합니다. 예를 들어 Android, IOS, Windows Phone 등이 모두 가능합니다. 웹 서비스와의 데이터 상호 작용을 실현합니다.

3. HTTP 프로토콜을 기반으로 하며 방화벽을 직접 통과하며 매우 다양합니다.

다음은 Visual Studio 2013(다른 VS 버전에서도 마찬가지)을 사용하여 간단한 웹을 만듭니다. 서비스.

1. Visual Studio->파일->새로 만들기->웹사이트 열기

2. ASP.NET 빈 웹 사이트를 선택하고 "확인"을 클릭하세요.

3. 새 웹 사이트를 생성하면 해결 방법이 표시됩니다. 관리자에 web.config가 표시됩니다. 나중에 이 파일을 구성하여 WebService에 대한 브라우저의 원격 호출을 구현할 수 있습니다.

이제 솔루션에서 프로젝트 이름을 마우스 오른쪽 버튼으로 클릭하여 WebService 프로젝트를 추가합니다.

4. 이후 프로젝트 템플릿에서 웹 서비스(ASMX)를 찾아서 추가하시면 됩니다!

5. 생성 후 루트 디렉터리의 APP_Code 폴더

에 WebService.cs 파일을 생성합니다. 웹사이트 WebService.asmx 파일이 동시에 생성됩니다

이 두 파일 중 WebService.cs는 로직 부분을 담당하고 WebService.asmx는 서비스 부분을 제공합니다. 앞으로는

WebService 서비스를 참조할 때 WebService.asmx 파일을 직접 참조하여 WebService 서비스를 호출하게 됩니다.

이제 WebService.cs 파일을 열어 논리 부분을 편집하고 간단한 "클라이언트가 웹 서비스를 호출하여 간단한 추가 작업을 구현하고 결과를 클라이언트에

문자열 으로 반환합니다."

/*
  Web.Services.cs文件
*/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;

/// <summary>
/// WebService 的摘要说明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
// 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消注释以下行。 
// [System.Web.Script.Services.ScriptService]
public class WebService : System.Web.Services.WebService {

  public WebService () {

    //如果使用设计的组件,请取消注释以下行 
    //InitializeComponent(); 
  }

  /// <summary>
  /// 方法上头的[WebMethod]是声明一个web服务方法,如果你想写个方法能让客户端调用并返回结果就必须在方法上头标注[WebMethod]
  /// 如果是只负责逻辑运算或私有方法,并不打算给客户端结果,只给类方法内部调用就无需声明[WebMethod]
  /// </summary>
  /// <param name="a"></param>
  /// <param name="b"></param>
  /// <returns>将运算结果转换成字符串返回</returns>
  [WebMethod]
  public string HelloWorld(int a, int b) {
    int result = a + b;
    return result.ToString();
  }  
}
로그인 후 복사

위의 cs 파일을 저장한 후, 간단한 웹 서비스가 생성되는 코드입니다!

이 프로젝트를 시작하고 브라우저를 사용하여 Microsoft가 정의한 호출 페이지를 살펴보겠습니다.

여기서 우리가 작성한 Hello 메서드를 볼 수 있습니다. 이 메서드를 입력하면

디버깅

호출 페이지로 들어갈 수 있습니다.

입력 매개변수는 간단한 추가 작업입니다. 매개변수는 우리가 작성한 HelloWorld 메소드의 매개변수 a와 b입니다.

정수

두 개를 입력하고 클릭하면 다음과 같은 결과가 나타납니다.

다음은 웹 서비스에 의해 반환된 결과입니다. 그 중 133은 HelloWorld 매개변수 a+b에 의해 반환된 결과입니다.

<?xml version="1.0" encoding="UTF-8"?>
<string xmlns="http://tempuri.org/">133</string>
로그인 후 복사

이 시점에서 나중에 웹 서비스를 호출하려면 위의 방법을 사용하여 클라이언트가 서버에서 데이터를 얻고 "hostname/webservicename.asmx"에 액세스하여 이를 호출할 수 있습니다.

얻은 데이터는 XML이므로 클라이언트는 데이터를 가져온 후 XML 파일을 구문 분석해야 합니다.

참고: 위에서 생성되고 브라우저에서 호출되는 웹 서비스는 로컬 컴퓨터 디버깅에만 사용됩니다. 원격 호출 디버깅을 수행하려면 web.config(앞서 언급)를 구성해야 합니다.

구성되지 않은 경우 , 원격 호출 시 다음이 나타납니다. 테스트 양식은 로컬 컴퓨터의 요청 문제를 해결하는 데만 사용할 수 있습니다.

원격통화가 필요한 경우에는 다음 방법을 참고하시면 됩니다.

홈페이지 솔루션에서 web.config를 찾아보세요

打开后添加如下配置即可:


<system.web> 
  <webServices> 
   <protocols> 
    <add name="HttpGet"/> 
    <add name="HttpPost"/> 
   </protocols> 
  </webServices>  
<system.web>
로그인 후 복사

위 내용은 .NET에서 WebService 서비스 생성 분석 예시(그림 및 텍스트)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿