Le service WCF avec 4 PARMS d'entrée et 3 PARMS est réorganisé par Add Service Reference dans Proxy Class Project
-
29-10-2019 - |
Question
J'ai regardé dedans et ailleurs et j'ai vu des questions posées à ce sujet avec quelques réponses qui n'ont toujours aucun sens pour moi dans mon cas.
Je refactorise ma solution de travail VStudio 2010 qui a:
- Un projet avec un service Web ASMX
- Un autre projet distinct pour la classe proxy (pas de code ici sauf ce qui est généré par Ajouter une référence Web
- Un autre projet distinct pour le client (contient une référence à proxyclass.dll
La nouvelle solution VStudio 2010 a:
- Un projet de type bibliothèque de services WCF pour le contrat par lui-même (Ifileservice.cs) un projet de type bibliothèque de services WCF pour la mise en œuvre du contrat (FileService.cs)
- Un autre projet distinct pour la classe proxy (pas de code ici sauf ce qui est généré par Ajouter une référence de service
- Un autre projet distinct pour le client (contient une référence à la WCFProxyClass.dll)
Voici le contrat qui se termine par 3 paramètres (et la mise en œuvre de même est le même ordre):
[ServiceContract(Name = "IFileService", Namespace = "http://www.cbmiweb.com/TrimWCF/2011/11")]
public interface IFileService
{
[OperationContract]
public string DownloadFile(string trimURL
, string TrimRecordNumber
, string CallerPC
, string RequestorID
, out byte[] docContents
, out string returnFiletype
, out string returnFilename)
{
Voici ce qui ajoute la référence de service générée dans mon projet de classe proxy:
public string DownloadFile(
out byte[] docContents
, out string returnFiletype
, out string returnFilename
, string trimURL
, string TrimRecordNumber
, string CallerPC
, string RequestorID)
{
return base.Channel.DownloadFile(out docContents, out returnFiletype, out returnFilename, trimURL, TrimRecordNumber, CallerPC, RequestorID);
}
J'ai lu des réponses allant de "vous ne pouvez pas utiliser PARMS dans WCF" à "vous ne devez pas utiliser la référence d'ajout de service, mais utilisez plutôt Svcutil.exe" à "l'ordre des paramètres n'a pas d'importance ... cela fonctionnera toujours".
Je suis confus sur ce qu'il faut faire ici (et ce que j'ai fait de mal qui a conduit à cet ordre réarrangé et pourquoi cela s'est produit).
Pas de solution correcte