2015-02-20 36 views

risposta

9

Ho risposto qualche giorno indietro alla seguente domanda.

ASP.NET 5 add WCF service reference

Nel caso di cui sopra c'è un servizio WCF e nel tuo caso è il servizio Web.

Di seguito si dovrebbe preoccupare o considerare.

  1. Non funzionerà con CoreCLR
  2. si deve aggiungere riferimento a "System.Web.Services" modo seguente.

    aspnet50" : { "frameworkAssemblies": {
    "System.Web.Services": ""} , "dipendenze": { "ClassLibrary2": "1.0.0- *" }}

Tutti gli altri passaggi sono simili che si deve creare il progetto ClassLibrary e aggiungere di riferimento di quel progetto o direttamente aggiungere classe generata dal WSDL al vostro asp.ne t 5 progetto.

Nota: Per questa risposta ho usato VS 2015 CTP 5.

+1

Probabilmente una soluzione migliore per ASP.NET MVC 5 e 6 è quello di utilizzare risposta http://stackoverflow.com/a/28440491/3912048 da quella stessa domanda. Ciò ti consentirà di parlare con un servizio web ASMX senza bisogno di System.Web o di costruire un assembly separato. L'unico svantaggio è che dovrai generare nuove classi proxy usando svcutil.exe poiché quelle create da wsdl.exe hanno la dipendenza System.Web. svcutil.exe funzionerà comunque per i servizi ASMX e WCF. Vedere https://msdn.microsoft.com/en-us/library/vstudio/ms751529%28v=vs.100%29.aspx per ulteriori informazioni sull'uso di svcutil con i servizi ASMX – Adam

+0

Se si guarda a questa domanda, allora ha un uso specifico di utilità chiamato WSDL. Quando la classe genera utilizzando WSDL, ha dipendenza da System.Web.Services. – dotnetstep

+0

Sì, sei corretto che se DEVI utilizzare le classi generate da wsdl.exe avrai la dipendenza System.Web.Services. Se ti interessa solo interagire con il servizio ASMX, però, usare scvutil è un'opzione migliore perché puoi usare il nuovo stack ASP.NET 5 (e MVC 6 come domanda) invece di limitarti al targeting net45. – Adam

Problemi correlati