2010-09-28 3 views
0

J'ai un ancien site ASP (note: pas ASP.NET) qui contient un fichier appelé "listener.asp". Ce fichier est l'interface avec le "web service api". Ce fichier est sur une machine que je ne peux pas accéder pendant un certain temps en raison de la maintenance et de la mise en œuvre. Cependant, on m'a donné un tas de fichiers XML. Ces fichiers XML se terminent par "* Request.xml" et "* Response.xsd".C# + Programmation sur un service Web avec uniquement des fichiers .xsd et .xml

Ma question est, puis-je implémenter mon code pour interagir avec ces fichiers .xml et .xsd sans avoir besoin de frapper listener.asp? Je sais que je ne vais pas avoir de vraies données. Mais je pensais qu'il pourrait y avoir un moyen de construire mon application jusqu'à ce que la machine soit disponible. Est-ce qu'il y a un moyen de faire ça?

Je suppose que je suppose qu'il y a une raison pour ces fichiers .xml et .xsd. Je pense que la raison est de "définir" les objets de requête et de réponse. Mais je voudrais trouver un moyen de coder et de tester sans avoir à compter sur cette machine. Est-ce possible avec ce que j'ai reçu?

Merci

Répondre

0

La meilleure façon serait de définir une classe abstraite qui donne accès à votre « service Web api ». Créez ensuite deux classes dérivées, une qui fonctionne avec le service Web réel et une qui récupère les fausses réponses à partir des fichiers.

abstract class LegacyWebService 
{ 
    public abstract int Foo(); 
} 

class RealLegacyWebService : LegacyWebService 
{ 
    public override int Foo() 
    { 
     return (int)XDocument.Load("http://www.example.com/foo").Root; 
    } 
} 

class FakeLegacyWebService : LegacyWebService 
{ 
    public override int Foo() 
    { 
     return (int)XDocument.Load(@"C:\Users\Me\Desktop\foo.xml").Root; 
    } 
} 

Vous devez également être en mesure de créer des classes C# à partir de vos fichiers XSD et utiliser sérialisation XML pour convertir les réponses XML à partir du service Web ou le fichier à des objets C#.

Questions connexes