2010-11-11 7 views
4

Je rencontre des problèmes pour cibler un service WCF .NET 4 sur 64 bits. Je prends les étapes suivantes sur un OS 64 bits Vista:Problèmes visant un service WCF .NET 4 à 64 bits

Créer un nouveau projet de service WCF dans Visual Studio 2010.

Modifier la cible de la plate-forme à 64 bits. Après cela, mon service WCF ne fonctionnera plus dans Cassini ou IIS. Un point à noter est que prendre ces mêmes actions et cibler .NET 3.5 tout fonctionne bien. Le projet se construit sans problème. Toute aide très appréciée. L'erreur que je reçois lors du chargement du service est:

(Je ne cherche pas la réponse "Compiler ceci comme n'importe quel CPU". Je suis plus intéressé à savoir pourquoi cela se produit. :-))

Erreur de serveur dans l'application '/'. Le type 'WcfService3.Service1', fourni en tant que valeur d'attribut Service dans la directive ServiceHost, ou fourni dans l'élément de configuration system.serviceModel/serviceHostingEnvironment/serviceActivations est introuvable. Description: Une exception non gérée s'est produite lors de l'exécution de la requête Web en cours. Veuillez consulter la trace de la pile pour plus d'informations sur l'erreur et son origine dans le code.

Détails d'exception: System.InvalidOperationException: Le type 'WcfService3.Service1', fourni en tant que valeur d'attribut Service dans la directive ServiceHost, ou fourni dans l'élément de configuration system.serviceModel/serviceHostingEnvironment/serviceActivations est introuvable.

Erreur Source:

Une exception non gérée a été générée pendant l'exécution de la demande Web actuelle. Les informations concernant l'origine et l'emplacement de l'exception peuvent être identifiées à l'aide de la trace de la pile d'exceptions ci-dessous.

Stack Trace:

[InvalidOperationException: Le type 'WcfService3.Service1', à condition que la valeur de l'attribut Service dans la directive ServiceHost ou prévu dans l'élément de configuration system.serviceModel/serviceHostingEnvironment/serviceActivations n'a pas pu être trouvé .] System.ServiceModel.Activation.ServiceHostFactory.CreateServiceHost (String constructorString, Uri [] baseAddresses) 51902 System.ServiceModel.HostingManager.CreateService (String normalizedVirtualPath) 1440 System.ServiceModel.HostingManager.ActivateService (String normalizedVirtualPath) + 44 System.ServiceModel.HostingManager.EnsureServiceAvailable (Chaîne normalizedVirtualPath) +615

[ServiceActivationException: Le service '/Service1.svc' ne peut pas être activé en raison d'une exception lors de la compilation. Le message d'exception est: Le type 'WcfService3.Service1', fourni en tant que valeur d'attribut Service dans la directive ServiceHost, ou fourni dans l'élément de configuration system.serviceModel/serviceHostingEnvironment/serviceActivations est introuvable.] System.Runtime.AsyncResult .end (résultat IAsyncResult) 679246 System.ServiceModel.Activation.HostedHttpRequestAsyncResult.End (résultat IAsyncResult) 190 System.ServiceModel.Activation.HostedHttpRequestAsyncResult.ExecuteSynchronous (contexte HttpApplication, String routeServiceVirtualPath, Boolean flowContext, Boolean ensureWFService) 234 System.ServiceModel.Activation.HttpModule.ProcessRequest (Expéditeur d'objet, EventArgs e) +355 System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +148 System.Web.HttpApplication.ExecuteStep (étape IExecutionStep, Boolean & completedSynchronously) +75

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

Répondre

4

Je pense que les raisons à cela sont le fait que l'hôte web Cassini est une application 32 bits, donc vous ne pouvez pas partager des runtimes x64 et x86 dans le même processus.

Pour IIS l'exécutez-vous dans son propre pool d'applications? Là encore, le pool d'applications peut être partagé avec des applications 32 bits, ce qui vous empêchera d'exécuter un processus x64. Si vous associez votre répertoire virtuel à un nouveau pool d'applications, le processus doit se charger correctement.

0

fournie comme valeur d'attribut de service dans la directive ServiceHost ou fournie dans l'élément de configuration system.serviceModel/serviceHostingEnvironment/serviceActivations est introuvable.

Questions connexes