ホームページ  >  記事  >  バックエンド開発  >  C# は保護レベルのためアクセスできず、パブリック型のみを処理できます 詳細なコードの紹介

C# は保護レベルのためアクセスできず、パブリック型のみを処理できます 詳細なコードの紹介

黄舟
黄舟オリジナル
2017-03-11 13:33:544107ブラウズ

C# を実装してリスト データを XML ファイルにエクスポートするときにエラーが発生しました [ソース コードが添付]: 保護レベルのためアクセスできません。パブリック型のみを処理できます。

エラーを生成したコード行:

XmlSerializer xmlSerializer = new XmlSerializer(typeof(List<UserModel>));

エラーの原因: 次のコードのクラスは次のように定義されています:

class UserModel

パブリック アクセス修飾子が追加されていません

    /// <summary>
    /// 用户实体类
    /// 
    /// 注意:类的访问修饰符必须是:public,否则会出现错误:
    /// 因其保护级别而不可访问。只能处理公共类型。
    /// </summary>
    [Serializable]
    public class UserModel
    {
        private long id = 1;

        private string name = "name";

        private int gender = 0;

        private int age = 20;

        private string userName = "userName";

        private string password = "password";

        public long Id
        {
            get { return id; }
            set { id = value; }
        }

        public string Name
        {
            get { return name; }
            set { name = value; }
        }

        public int Gender
        {
            get { return gender; }
            set { gender = value; }
        }

        public int Age
        {
            get { return age; }
            set { age = value; }
        }

        public string UserName
        {
            get { return userName; }
            set { userName = value; }
        }

        public string Password
        {
            get { return password; }
            set { password = value; }
        }
    }

以上がC# は保護レベルのためアクセスできず、パブリック型のみを処理できます 詳細なコードの紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。