C# 由于asp.net-C中的保护级别错误,无法访问#

C# 由于asp.net-C中的保护级别错误,无法访问#,c#,asp.net,c#-4.0,C#,Asp.net,C# 4.0,我有两个类“passwordsettings”和“helper” Passwordsettings.cs public class PasswordSetting { public PasswordSetting() { } //password age , 80, 180, 360 days public int Duration { get; set; } //password minimum length public int

我有两个类“passwordsettings”和“helper”

Passwordsettings.cs

public class PasswordSetting
{
    public PasswordSetting()
    {

    }

    //password age , 80, 180, 360 days
    public int Duration { get; set; }

    //password minimum length
    public int MinLength { get; set; }

    //password maximum length
    public int MaxLength { get; set; }

    //password Numbers length
    public int NumsLength { get; set; }

    //password Upper letter length
    public int UpperLength { get; set; }

    //password Special character length
    public int SpecialLength { get; set; }

    //password valid special characters
    public string SpecialChars { get; set; }
}
Helper.cs

public  class Helper
{
    public Helper()
    {        
         //TODO: Add constructor logic here        
    }

    public static PasswordSetting GetPasswordSetting()
    {
        XmlDocument xmlDoc = new XmlDocument();
        xmlDoc.Load(HttpContext.Current.Server.MapPath("~/PasswordPolicy.xml"));

        PasswordSetting passwordSetting = new PasswordSetting();

        foreach (XmlNode node in xmlDoc.ChildNodes)
        {
            foreach (XmlNode node2 in node.ChildNodes)
            {
                passwordSetting.Duration = int.Parse(node2["duration"].InnerText);
                passwordSetting.MinLength = int.Parse(node2["minLength"].InnerText);
                passwordSetting.MaxLength = int.Parse(node2["maxLength"].InnerText);
                passwordSetting.NumsLength = int.Parse(node2["numsLength"].InnerText);
                passwordSetting.SpecialLength = int.Parse(node2["specialLength"].InnerText);
                passwordSetting.UpperLength = int.Parse(node2["upperLength"].InnerText);
                passwordSetting.SpecialChars = node2["specialChars"].InnerText;
            }
        }
        return passwordSetting;
    }
}

但当我在按钮点击事件中使用它们时,出现了以下问题。。为什么会发生这种情况

出于某种原因,
Helper
实际上是
passwordstrength
(sic)中的一个嵌套类。虽然
Helper
(如帖子所示)是一个公共类,但我猜
passwordstreagth
内部的
。为什么
Helper
是嵌套类


当然,
PasswordStreangth
可能是您的名称空间-我手头没有VS来检查它是否会以Intellisense的方式显示。如果是这样的话,那么在您构建所依据的版本中,
Helper
可能实际上没有声明为公共的-可能是代码中的其他地方发生了更改,或者是一个陈旧的构建?

IMO这种满足密码要求的方法是愚蠢的。不需要特定类中的字符,需要一定的复杂性。为什么要在密码中添加
MaxLength
?我将所有这些密码要求存储在一个Xml文件中,因为当管理员想要更改要求时,我需要更改它们。请更新您提供的类的问题发布命名空间。命名空间为
的代码行将是great@all:当我把它们放在应用程序代码中时,我做对了folder@Sudheesh:基于Intellisense,它看起来不是那样的。那么,
passwordstrength
是一个类吗?PasswordSettings。。这是一个class@Sudheesh:根据Intellisense工具提示,我没有说PasswordSettings,我说的是PasswordStreangth。@Sudheesh:那可能只是它当时在同一个程序集中。您以前根本不清楚代码在哪里。如果这些课程真的,真的是公开的,它应该一直都很好。