Question

Est-il possible de créer un service Web REST à l'aide d'ASP.NET 2.0 ?Les articles et entrées de blog que je trouve semblent tous indiquer qu'ASP.NET 3.5 avec WCF est requis pour créer des services Web REST avec ASP.NET.

S'il est possible de créer des services Web REST dans ASP.NET 2.0, pouvez-vous fournir un exemple.

Merci!

Était-ce utile?

La solution

J'ai en fait créé un service Web REST avec asp.net 2.0.Ce n'est vraiment pas différent de la création d'une page Web.

Quand je l'ai fait, je n'avais vraiment pas beaucoup de temps pour rechercher comment le faire avec un fichier asmx, alors je l'ai fait dans un fichier aspx standard.Je sais que cela représente une surcharge supplémentaire en procédant de cette façon, mais en tant que première révision, c'était bien.

protected void PageLoad(object sender, EventArgs e)
{
    using (XmlWriter xm = XmlWriter.Create(Response.OutputStream, GetXmlSettings()))
    {
        //do your stuff
        xm.Flush();
    }
}

    /// <summary>
    /// Create Xml Settings object to properly format the output of the xml doc.
    /// </summary>
    private static XmlWriterSettings GetXmlSettings()
    {
        XmlWriterSettings xmlSettings = new XmlWriterSettings();
        xmlSettings.Indent = true;
        xmlSettings.IndentChars = " ";
        return xmlSettings;
    }

Cela devrait suffire pour vous aider à démarrer, j'essaierai d'en poster plus plus tard.

De plus, si vous avez besoin d'une authentification de base pour votre service Web, cela peut être fait, mais cela doit être fait manuellement si vous n'utilisez pas Active Directory.

Autres conseils

Il est tout à fait possible de créer des services Web RESTful à l'aide d'ASP.NET.Si vous démarrez un nouveau projet, j'envisagerais certainement de créer des services Web RESTful à l'aide de WCF.Le 3.5 .NET Framework vous permet de spécifier un point de terminaison RESTful avec un ancien point de terminaison SOAP standard tout en fournissant le même service.

Tout ce que vous avez à faire est d'activer un comportement de point de terminaison qui appelle <webHttp />

Voici une bonne série sur la création de services Web RESTful à l'aide de WCF :

http://blogs.msdn.com/bags/archive/2008/08/05/rest-in-wcf-blog-series-index.aspx

Vous pouvez certainement créer des services Web RESTful dans ASP.NET 2.0, par exemple exemple, mais il n'existe pas d'API de haut niveau pour faire tout le travail à votre place, comme fourni par WCF dans .NET 3.5.

Eh bien, bien sûr, vous pouvez toujours implémenter la spécification vous-même.C'est juste qu'il n'y a rien de intégré pour le prendre en charge.Si vous utilisez la solution de Nathan Lee, faites-le en tant que gestionnaire http (.ashx) plutôt qu'en aspx.Vous pouvez simplement copier/coller son code dans un nouveau fichier de gestionnaire.

Vous pouvez facilement créer des services Web RESTful en implémentant la spécification à l'aide de IHTTPHandlers.

Vérifiez également en utilisant ASP.Net MVC.J'ai écrit quelques articles à ce sujet sur mon blog :

http://shouldersofgiants.co.uk/Blog/

Recherchez ma série Création d'un service Web RESTful à l'aide d'ASP.Net MVC

Je commence tout juste à les utiliser, mais d'après ce que j'ai vu, 2.0 suppose plutôt SOAP.

Vous pouvez créer un service RESTful en utilisant

1) Service de repos WCF 2) API Web ASP.NET

Si vous vous souciez tous du service RESTful, l’API Web ASP.NET est celle que vous devriez choisir.Mais si vous avez besoin d'un service prenant en charge à la fois le service Web SOAP et RESTful, WCF REST serait un bon choix.

Certains articles discutent de l’un par rapport à l’autre.Ce article peut être utile.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top