2015-11-24 13 views
7

Abbiamo un progetto sito Web .NET 4 creato utilizzando Visual Studio 2013, fa riferimento al file System.Net.Http .dll.Progetto sito Web ASP.NET, ma errori di pubblicazione

Questa è la linea nel web.config che carica la DLL:

<add assembly="System.Net.Http, Version=1.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/> 

Il progetto si basa bene, ma quando si cerca di “Pubblica sito Web” dà il seguente errore:

The type or namespace name ‘Http’ does not exist in the namespace ‘System.Net’ (are you missing an assembly reference?)

Sembra che l'assembly possa essere caricato dal GAC, abbiamo provato a mettere l'assembly nella cartella BIN dell'applicazione, ma questo non fa alcuna differenza: è ancora presente come riferimento GAC sulle pagine delle proprietà del progetto.

abbiamo anche provato ad aggiungere:

<runtime> 
    <assemblyBinding> 
     <dependentAssembly> 
     <assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/> 
     <codeBase version="1.0.0.0" href="/bin/System.Net.Http.dll"/> 
     </dependentAssembly> 
    </assemblyBinding> 

Come suggerito qui: Could not load file or assembly System.Web.Http.WebHost after published to Azure web site

Ma questo non sembra funzionare.

Abbiamo modificato Target Framework su 3.5 e 4.5 senza alcun effetto.

Abbiamo provato a pubblicare da diverse macchine.

MODIFICA: abbiamo provato il pacchetto nuget suggerito in RobAda e non ha avuto l'effetto desiderato, stiamo ancora ricevendo errori.

+0

forse u bisogno di guardare [questo] (http://stackoverflow.com/questions/26272743/system-net-http-missing) – BNN

+0

@coder, grazie abbiamo provato che, sfortunatamente, quando proviamo che il progetto non costruirà a causa del codice legacy - sembra che siamo bloccati su 4.0 per ora. – Mack

risposta

1

Sembra che tu stia cercando di calzare qualcosa dove non è/non può andare bene.

Un possibile approccio architettonico sarebbe quello di separare la funzionalità in una soluzione.

Se i limiti di tempo sono un problema e questa è una possibilità, potrebbe essere la soluzione ai vostri problemi.

A lungo termine però: Sarebbe la pena di assicurare che si mantiene al passo con i tempi, come si ottengono più problemi come questo il passare del tempo, naturalmente questo deve essere l'approccio pragmatico ...

+0

Questa è una possibilità che l'app di proof of concept pubblica bene e che potremmo ospitare in un dominio separato, proveremo e torneremo da voi. – Mack

4

ho visto lo stesso problema su un app amici, avevamo bisogno di scavare intorno un bel po ', ma alla fine ha scoperto che è necessario installare questo pacchetto NuGet:

https://www.nuget.org/packages/Microsoft.Net.Http

Sarà quindi necessario aggiungere il riferimento a System.Net.Http perché non produca l'errore dichiarato.

Problemi correlati