升级到.net 4时MembershipUser / System.Web.ApplicationServices出现问题

时间:2010-06-05 15:34:51

标签: vb.net visual-studio-2010 .net-4.0

我有一个大型的vb.net web项目,我正在尝试升级到.net4 / VS2010。在编译期间,我收到以下错误:

  汇编'System.Web,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a'中的'System.Web.Security.MembershipUser'已被转发到程序集'System.Web.ApplicationServices'。您的项目中缺少对“System.Web.ApplicationServices”的引用,或者程序集“System.Web.ApplicationServices”中缺少“System.Web.Security.MembershipUser”类型。

我研究了这个问题,错误是准确的。我添加了对System.Web.ApplicationServices的引用,但我仍然遇到问题。该项目似乎没有认识到已添加参考。 Intellisense不会拿起它,我不能在Import语句等中使用它......

程序集列在我的web.config的编译部分中:

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

有什么想法吗?

4 个答案:

答案 0 :(得分:7)

检查所依赖的项目是否也引用System.Web.ApplicationServices。

答案 1 :(得分:3)

我最近将项目从3.5升级到4.0并收到了您在上面定义的错误。我发现targetFramework属性未包含在web.config中的编译节点上。这解决了编译错误的问题。

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

答案 2 :(得分:2)

添加对System.Web.Extensions.dll的引用,然后尝试。

答案 3 :(得分:-1)

在Web.config的编译部分中指定的PublicKeyToken = 31BF3856AD364E35与请求的不同(PublicKeyToken = b03f5f7f11d50a3a)。看看这个。