类型或命名空间名称'membershiuser '找不到

本文关键字:membershiuser 找不到 命名空间 类型 | 更新日期: 2023-09-27 18:16:53

我们最近将我们的解决方案升级到了。net 4.5。

我了解到System.Web.Security.MembershipUser已经被移到了System.Web.ApplicationServices.dll中。

我在网页上添加了我们网站的参考资料。配置文件:

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

我在c#页面中使用了正确的"using"语句:

using System.Web.ApplicationServices;

但是,下面的代码仍然在MembershipUser上抛出一个错误:

MembershipUser u = Membership.GetUser(User.Identity.Name);
在这一点上,我完全不确定该做什么。我已经研究了一整天,并应用了一些变化(即网络)。但是这个c#页面仍然不能识别这些更改,错误仍然存在。

奇怪的是,即使存在这个错误,网站也会建立并可用,除了"更改密码"功能,该代码旨在解决。

有没有人可能指出我可能缺少引用或程序集的地方?

类型或命名空间名称'membershiuser '找不到

好的,我想我明白了。部分问题出在我们的网络上。

我将c#和vb的编译版本更改为4.0:

<system.codedom>
    <compilers>
      <compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CSharp.CSharpCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" warningLevel="4">
        <providerOption name="CompilerVersion" value="v4.0"/>
        <providerOption name="WarnAsError" value="false"/>
      </compiler>
      <compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" type="Microsoft.VisualBasic.VBCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" warningLevel="4">
        <providerOption name="CompilerVersion" value="v4.0"/>
        <providerOption name="OptionInfer" value="true"/>
        <providerOption name="WarnAsError" value="false"/>
      </compiler>
    </compilers>
  </system.codedom>

另外,我们的编译目标框架没有指定4.0。

<compilation debug="true" batch="false" batchTimeout="7200" targetFramework="4.0">

现在在构建站点时,MembershipUser现在显示为我所期望的。万岁。

从2.0升级到4.5并不顺利。

对于。net Framework 4.0或以上版本添加System.Web.ApplicationServices.dll的引用