.Net 4.0 System.Web.Security.MembershipProvider有歧义参考吗?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (23)

我最近将我的BlogEngine.Net安装升级到1.6和.Net 4.0,但是,当我执行升级时,我没有构建BlogEngine.Core。但是,当我尝试构建BlogEngine.Core项目时,编译失败,因为它无法加载(System.Web.Security。)MembershipProvider的符号。我相信这是一个.Net / C#/用户问题,而不是BlogEngine问题。

该项目有一个对System.Web库的引用,并且该类文件(从MembershipProvider继承)包含一个Using for System.Web.Security。启用了ReSharper后,IntelliSense表明混淆了使用哪个成员资格提供程序,以选择具有相同名称的两个库(System.Web.Security)。

什么可能导致这个模棱两可的参考?我如何确定哪个库被引用?没有明显的表示重复的参考。再次,一旦你看到它,这个显而易见的事情就显而易见了。

提问于
用户回答回答于

问题解决了。System.Web.Security命名空间是System.Web的成员,但它也是System.Web.ApplicationServices的成员。该项目引用了System.Web,并使用了一个引用System.Web.Security的语句,因此IntelliSense在指定类时不会抛出标志。但是,该项目缺少对System.Web.ApplicationServices的引用。该项目有一个对该类的引用,但无法加载该类,因为包含程序集(... ApplicationServices)缺失。

用户回答回答于

为我的Web应用程序创建自定义成员资格提供程序时,我只处理了同样的问题。需要删除对System.Web的引用并添加以下参考。 - System.Web.ApplicationServices - System.Configuration

扫码关注云+社区