.Net 4.0 System.Web.Security.MembershipProvider含糊不清的参考?

wil*_*ilk 15 .net c# reference blogengine.net ambiguous

我最近将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).

什么可能导致这种模棱两可的参考?如何确定引用哪两个库?没有任何明显的表明重复的参考.然后,一旦你看到它,显而易见的是显而易见的.

wil*_*ilk 37

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

  • 作为补充说明,我不得不删除对System.Web的引用.添加System.Web.ApplicationServices,然后重新添加System.Web. (3认同)