刚才调试里发现一个奇怪现象,list自动增长
刚才调试里发现一个奇怪现象 不知道大家感兴趣不!!!
首先说明一下.有一个帐户类中定义了一个数据库中的字段列表
//数据表原有字段 List<System.String> _listField=new List<System.String>();/// <summary> /// 数据表字段 /// </summary> public List<System.String> FieldList { get { _listField.Add("AutoID"); _listField.Add("AccountName"); _listField.Add("Password"); _listField.Add("RoleID"); _listField.Add("Email"); _listField.Add("Mobile"); _listField.Add("IsSystem"); _listField.Add("LoginCount"); _listField.Add("LastLoginIP"); _listField.Add("LastLoginArea"); _listField.Add("LastLoginTime"); _listField.Add("AutoTimeStamp"); return _listField; } }...然后有段更新模型的代码public override bool UpdateModel<T>(T model) { bool bolReturn = false; //更新需要一个主键值 int intIDKey = new int(); //数据表名称 string strTableName = string.Empty; //数据表字段 List<string> listField = new List<string>(); Type modelEntityType = model.GetType(); PropertyInfo[] arrProperty = modelEntityType.GetProperties(); StringBuilder builderSQL = new StringBuilder(); List<SqlParameter> listParams = new List<SqlParameter>(); foreach (PropertyInfo property in arrProperty) { //指定的数据库表名 if (property.Name == "DBTableName") { object obj = property.GetValue(model, null); strTableName = obj == null ? string.Empty : obj.ToString(); } //指定的数据表字段 if (property.Name == "FieldList") { object obj = property.GetValue(model, null); listField = (List<string>)obj; } //指定的主键 if (property.Name == "AutoID") { object obj = property.GetValue(model, null); intIDKey = obj == null ? 0 : Convert.ToInt32(obj); } }神奇的事件就出现在FieldList listField 上面 private List<string> _ss=new List<string> (); public List<string> ss { get { if (_ss.Count > 0) { _ss.Clear(); } else { _ss.Add("1"); _ss.Add("2"); } return _ss; } }
[解决办法]
你是不是不断的拖动断点导致了重复添加数据,那就没错啊