Maison  >  Article  >  développement back-end  >  Exemple d'analyse de la création d'un service WebService dans .NET (image et texte)

Exemple d'analyse de la création d'un service WebService dans .NET (image et texte)

黄舟
黄舟original
2017-05-21 11:21:372928parcourir

Cet article présente principalement .NET C# pour créer en détail une instance simple du service WebService, qui a une certaine valeur de référence. Les amis intéressés peuvent se référer au

Service Web C'est une application. basé sur le programmable et est utilisé pour développer des applications interopérables distribuées. C'est aussi un service web

Les caractéristiques de WebService ont les points suivants :

Utilisation <.>XML (Standard Universal Markup Language) comme format d'interaction avec les données.

2. Multiplateforme, car XML est utilisé, l'échange de données peut être réalisé tant que les applications locales peuvent se connecter au réseau et analyser XML. Par exemple, Android, IOS, Windows Phone, etc. réaliser une interaction de données avec les services Web.

3. Basé sur le protocole HTTP, directement à travers le pare-feu et très polyvalent

Ce qui suit utilise Visual Studio 2013 (il en va de même pour les autres versions de VS) pour créer un site Web simple ; service.

1. Ouvrez Visual Studio->Fichier->Nouveau->Site Web

2. Sélectionnez ASP.NET site Web vide et cliquez sur "OK"

3. Vous verrez la solution après avoir créé un nouveau site Web Nous voyons un web.config dans le gestionnaire. Plus tard, nous pourrons configurer ce fichier pour implémenter l'appel à distance du navigateur au WebService.

Maintenant, cliquez avec le bouton droit sur le nom du projet dans la solution pour ajouter un projet WebService.

4. Après cela, vous pouvez trouver le service Web (ASMX) dans le modèle de projet et l'ajouter !

5. Après la création, créez un fichier WebService.cs dans le dossier APP_Code

dans le répertoire racine de le site Internet Un fichier WebService.asmx sera créé en même temps

Parmi ces deux fichiers, WebService.cs est responsable de la partie logique, et WebService.asmx fournit la partie service. À l'avenir, lorsque

fera référence au service WebService, le fichier WebService.asmx sera directement référencé pour appeler le service WebService. La partie exécution du service est le fichier WebService.cs. Ouvrez maintenant le fichier WebService.cs pour éditer la partie logique et exécutez un simple "Le client appelle le service Web pour implémenter une opération d'ajout simple et renvoie le résultat sous forme de chaîne

au client"


Le code ci-dessus écrit une méthode de base pour les appels à distance. Après avoir enregistré le fichier cs, un service Web simple est créé !

/*
  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();
  }  
}
Démarrons ce projet et utilisons un navigateur pour afficher la page d'appel que Microsoft a définie pour nous :

Ici, nous pouvons voir le Bonjour que nous avons écrit La méthode peut être appelé. Nous cliquons pour entrer cette méthode pour accéder à la page Débogage

appelante :

Paramètres d'entrée, ce que nous avons écrit est une simple opération d'ajout, Les paramètres sont les paramètres a et b de la méthode HelloWorld que nous avons écrite. Nous entrons deux entiers

et cliquons pour appeler. Les résultats suivants apparaissent :

. Voici le web Le résultat renvoyé par le service, dont 133 est le résultat renvoyé par le paramètre HelloWorld a+b :


À ce stade, si nous souhaitez appeler un service Web à l'avenir, nous pouvons utiliser ce qui précède. Le client obtient les données du serveur en accédant à : "hostname/webservicename.asmx" pour appeler.

<?xml version="1.0" encoding="UTF-8"?>
<string xmlns="http://tempuri.org/">133</string>
Les données obtenues sont XML, le client doit donc analyser le fichier XML après avoir obtenu les données.

Remarque : le service Web créé ci-dessus et appelé par le navigateur est uniquement destiné au débogage de l'ordinateur local. Vous devez configurer web.config (mentionné précédemment) pour réaliser le débogage des appels à distance

S'il n'est pas configuré. , Lors des appels à distance, il apparaît : Le formulaire de test ne peut être utilisé que pour résoudre les problèmes liés aux requêtes de l'ordinateur local.

Si vous avez besoin d'appels à distance, vous pouvez vous référer à la méthode suivante :

Trouver web.config sous la solution du site

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


<system.web> 
  <webServices> 
   <protocols> 
    <add name="HttpGet"/> 
    <add name="HttpPost"/> 
   </protocols> 
  </webServices>  
<system.web>

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn