web-dev-qa-db-fra.com

Message d'erreur d'analyse du service Web: impossible de créer le type 'xxx'

Je reçois une erreur d'analyse lorsque j'essaie de naviguer sur mon service Web.

Déjà trouvé tant de réponses, mais aucune ne m'a aidé. Si quelqu'un peut me guider vers un lien utile que j'aurais peut-être oublié, ce sera d'une grande aide.

Voici le scénario:

J'ai un service Web intégré à VS-2010 (framework 4.0) hébergé sur IIS 7.5, qui utilise le pool d'applications "ASP.NET v4.0 Classic". Cela fonctionnait bien jusqu'à ce que je l'aie réinstallé. Il a commencé à montrer l'erreur ci-dessous


Erreur d'analyse syntaxique

Description: Une erreur s'est produite lors de l'analyse syntaxique d'une ressource requise pour traiter cette demande. Veuillez consulter les détails de l'erreur d'analyse spécifique ci-dessous et modifier votre fichier source de manière appropriée.

Message d'erreur d'analyse: Impossible de créer le type 'AuthenticateUser'.

Erreur source:

Ligne 1: <% @ WebService Language = "C #" CodeBehind = "~/App_Code/AuthenticateUser.cs" Class = "AuthenticateUser" %>

Fichier source: /WebService101/Services/AuthenticateUser.asmx Ligne: 1

Informations de version: Microsoft .NET Framework Version: 4.0.30319; Version ASP.NET: 4.0.30319.1016 


S'il vous plaît aider.

12
Bravo

Veuillez vérifier si toutes vos dll sont présentes dans le dossier du service Web. J'ai pu le trouver à l'aide d'un outil appelé "Beyond Compare". où j'ai comparé l'ancienne copie de travail du répertoire de service Web au nouveau.

13
SharpShooter

J'ai eu la même erreur, dans mon cas, la résolution était d'utiliser nom de classe qualifié complet (nom de classe avec espace de noms) dans le fichier .asmx.

<%@ WebService Language="C#" CodeBehind="~/App_Code/AuthenticateUser.cs" Class="AuthenticateUser" %>

deviendrait

<%@ WebService Language="C#" CodeBehind="~/App_Code/AuthenticateUser.cs" Class="MyProjectName.AuthenticateUser" %>
12
Pranav Singh

Vérifiez également que le chemin de sortie de la construction se trouve UNIQUEMENT dans le dossier "bin \". Un projet de service Web ne peut pas utiliser les fichiers DLL générés s'ils sont bloqués sous "bin\Debug\AnyCPU" ou "bin\Release\x86".

Un collègue et moi-même avons passé deux heures à essayer de faire fonctionner un projet de service Web sur un nouveau poste de travail qui avait parfaitement fonctionné sur une vieille machine.

J'espère que cette astuce aide quelqu'un d'autre à utiliser Google!

12
sevenfold

J'ai eu ce problème et je me suis creusé la tête pendant des jours et j'ai fait beaucoup de recherches en ligne. C’est essentiellement parce que le fichier et la classe doivent porter le même nom, c’est-à-dire que j'avais coupé le code ailleurs et que la classe s’appelait fileUploader. Le fichier s'appelait fileuploader.ashx. 

Donc, c'est ce qui causait mes problèmes. Lorsque j'ai renommé la classe en fileuploader, cela a parfaitement fonctionné. Ahhhh !! Plusieurs jours perdus!

1
Welshboy

Supprimer des sites/Tokhin/partie comme ceci:

alors ça va marcher ..

0
Tokhin