2010-06-05 10 views
6

Ho un grande progetto web vb.net che sto cercando di aggiornare a .net4/VS2010. Durante compilazione ottengo il seguente errore:Problemi con MembershipUser/System.Web.ApplicationServices durante l'aggiornamento a .net 4

'System.Web.Security.MembershipUser' in assembly 'System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' has been forwarded to assembly 'System.Web.ApplicationServices'. Either a reference to 'System.Web.ApplicationServices' is missing from your project or the type 'System.Web.Security.MembershipUser' is missing from assembly 'System.Web.ApplicationServices'.

ho ricercato la questione e l'errore è accurato. Ho aggiunto un riferimento a System.Web.ApplicationServices ma ho ancora problemi. Il progetto sembra non riconoscere che il riferimento è stato aggiunto. Intellisense non raccoglierlo, non posso usarlo in una dichiarazione di importazione, ecc ...

L'assemblea è elencato nella sezione di compilazione del mio web.config:

<assemblies> 
... 
    <add assembly="System.Web.ApplicationServices, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> 
</assemblies> 

Tutte le idee?

risposta

2

Recentemente ho aggiornato un progetto da 3.5 a 4.0 e ho ricevuto gli errori come definito sopra. Ho trovato che l'attributo targetFramework non era incluso nel nodo di compilazione nel web.config. Questo ha risolto i miei problemi con gli errori di compilazione.

compilation debug="false" strict="false" explicit="true" **targetFramework="4.0"** 
+0

Ciò ha funzionato per me, in combinazione con la modifica di VB/C# CompilerVersions su v4.0 in . Grazie! – MisterZimbu

1

Aggiungere un riferimento a System.Web.Extensions.dll e quindi provare.

+0

Ho già avuto questo nei riferimenti. Rimosso e aggiunto nuovamente. Senza fortuna. – DaveK

-1

PublicKeyToken = 31BF3856AD364E35 specificato nella sezione di compilazione di Web.config è diverso da quello richiesto (PublicKeyToken = b03f5f7f11d50a3a). Controllalo.

+1

-1: il PublicKeyToken 31BF3856AD364E35 è corretto per System.Web.ApplicationServices. b03f5f7f11d50a3a è il PublicKeyToken di System.Web. – MisterZimbu

7

Verificare che i progetti da cui dipende dipende anche da System.Web.ApplicationServices.

+0

ha funzionato per me su un progetto di classe .net 4.0 visual studio 2012 – hanzolo

Problemi correlati