首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

自定义门类每次New出来都带有以前的参数

2013-08-04 
自定义类型每次New出来都带有以前的参数自定义类型每次New出来都带有以前的参数自定义类型如下public clas

自定义类型每次New出来都带有以前的参数
自定义类型每次New出来都带有以前的参数

自定义类型如下


    public class M_USER_APIS
    {
        public M_USER_APIS() { }
        private static string _id;
        private static string _name;
        private static string _password;

        /// <summary>
        /// 用户名
        /// </summary>
        public string ID
        {
            set { _id = value; }
            get { return _id; }
        }
        /// <summary>
        /// 用户名
        /// </summary>
        public string Name
        {
            set { _name = value; }
            get { return _name; }
        }
        /// <summary>
        /// 密码
        /// </summary>
        public string Password
        {
            set { _password = value; }
            get { return _password; }
        }
    }

调用类型如下

            for (int i = 0; i < 5; i++)
            {
                M_USER_APIS model = null;
                model = new M_USER_APIS();


                model.ID = "5";
                B_USER_APIS bllUser = new B_USER_APIS();
                DataTable dtUser = bllUser.GetList(model);
            }


仅仅是举个例子,bllUser的功能是将Model非空的子类型进行条件查询。

我遇到的问题时,第一次new出modle后,modle所有的子类型都是null的。
但是再往后new出model,model除非一个一个赋值为null,否则都带有前一次的子类型的值。
这是怎么回事儿,怎样解决。 自定义类型 带参数
[解决办法]
remove "static" reserved word
[解决办法]
把static去掉
[解决办法]
static字段是属于整个类型的,你new的是一个具体的对象,你这样循环赋值,static中的字段是不会去掉的,去掉static

热点排行