日期:2014-05-19  浏览次数:20784 次

用实体类遇到的郁闷问题
我定义了一个可视化的实体类:UserInfo
[Serializable]
      public   class   UserInfo
      {
            private   string   id;
            private   string   name;
            private   string   password;

            public   UserInfo()   {   }

              public   UserInfo(string   id,   string   name)
              {
                      this.id   =   id;
                      this.name   =   name;
              }

              public   UserInfo(string   id,   string   name,   string   password)
              {
                      this.id   =   id;
                      this.name   =   name;
                      this.password=password;
              }
......

}

接着在一个实现类里返回序列化的实体类:
                public   IList <UserInfo>   GetUsers()
                {
                        SqlDataReader   dr;
                        IList <UserInfo>   users   =   new   List <UserInfo> ();
                        strSql   =   "Select   Staff_Id,Staff_Name,IsActive   From   tblUsers ";

                        DB.RunSql(strSql,   out   dr);

                        while   (dr.Read())
                        {
                                UserInfo   aUser   =   new   UserInfo(dr.GetString(0),   dr.GetString(1));
                                users.Add(aUser);
                        }

                        dr.Close();

                        return   users;
                }

谁知道返回的结果有3个字段:Id,Name,Password;但我只想返回前两个字段而已呀?请问这如何解决?不会又要定义一个只有两个字段的实体类吧?

请高兴解疑,谢谢!

------解决方案--------------------
。。!!
Password你不想用就不用呗
难道你的意思是:要是没有赋值该实体就没有这个属性?