Servizio WCF con 4 parms di input e 3 parms viene riordinato da ADD Service Reference in Proxy Class Project

StackOverflow https://stackoverflow.com/questions/8420443

Domanda

Ho guardato così e altrove e ho visto domande poste al riguardo insieme ad alcune risposte che non hanno ancora senso per me nel mio caso.

Sto refactoring la mia soluzione di Vstudio 2010 di lavoro che ha:

  • Un progetto con un servizio web ASMX
  • Un altro progetto separato per la classe proxy (nessun codice qui tranne quello che viene generato da Aggiungi riferimento Web
  • Un altro progetto separato per il client (contiene un riferimento a proxyclass.dll

La nuova soluzione VStudio 2010 ha:

  • Un progetto della libreria di servizi WCF di tipo per il contratto da solo (Ifileservice.cs) Un progetto della libreria di servizi WCF di tipo per l'implementazione del contratto (Fileservice.cs)
  • Un altro progetto separato per la classe proxy (nessun codice qui tranne quello che viene generato da Aggiungi riferimento al servizio
  • Un altro progetto separato per il client (contiene un riferimento a wcfproxyclass.dll)

Ecco il contratto che termina con 3 parametri (e l'implementazione dello stesso è lo stesso ordine):

[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)
    {

Ecco cosa aggiungi il riferimento di servizio generato nel mio progetto di 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);
}

Ho letto le risposte che vanno da "Non puoi usare le parms in WCF" a "Non dovresti usare il riferimento di Aggiungi servizio ma invece utilizzare svcutil.exe" per "l'ordine dei parametri non ha importanza ... funzionerà comunque".

Sono confuso su cosa fare qui (e cosa ho fatto di sbagliato che ha portato a questo ordine riorganizzato e perché è successo).

Nessuna soluzione corretta

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top