d上一次写了简单的实现,还是基于写SQL的情况下,这次可以实现基本的单表的简单条件的(复杂条件构想中)数据增删改查,通过特性标识来完成实体与数据表的映射。
有朋友上次提出多表间的关系映射,暂时还是通过(多实体类-视图)的映射实现,虽然写起来可能会麻烦些,不过应该也符合面向对象嘛!
代码:
实体插入:
DbHelper.ExecuteNonQuery(sb.ToString(), CommandType.Text, paramerList.ToArray());
}
使用相应实体类需要三个特性:
[DataTbName("People")] 表名,类唯一
[DataField("Name",IsPrimaryKey=true)] 字段,主键可以加上IsPrimaryKey不参与Insert
[DataInsert()] 参加Insert操作的字段必须添加此特性
例:
; }
}
使用示例:
DbHelper.ExecuteNonQuery(sb.ToString(), CommandType.Text, paramerList.ToArray());
}
实体类需要两个特性:
[DataTbName("People")] 标识表名
[DataField("Name",IsPrimaryKey=true)] 字段名和一个主键,根据主键删除
使用示例:
更新一个实体:
DbHelper.ExecuteNonQuery(sb.ToString(), CommandType.Text, paramerList.ToArray());
}
需要特性:
[DataTbName("People")] 表名
[DataField("Name",IsPrimaryKey=true)] 字段名和一个主键
[DataUpdate()] 参与更新的字段必须实现此特性
例:
; }
}
使用示例:
(people);
大至就是这样,还未完。实现更灵活的主法。
PS:有很多人说反射性能很差很差,这个先保留意见下!
有朋友上次提出多表间的关系映射,暂时还是通过(多实体类-视图)的映射实现,虽然写起来可能会麻烦些,不过应该也符合面向对象嘛!
代码:
实体插入:
}
使用相应实体类需要三个特性:
[DataTbName("People")] 表名,类唯一
[DataField("Name",IsPrimaryKey=true)] 字段,主键可以加上IsPrimaryKey不参与Insert
[DataInsert()] 参加Insert操作的字段必须添加此特性
例:
}
使用示例:
People people = new People();
people.PName = "杨春来";
people.PSex = "男";
people.PAge = 21;
ExecuteEntity.InsertEntity<People>(people);
实体删除操作,主要就是跟据主键了,多条件的正在想一个好的解决方案,例:people.PName = "杨春来";
people.PSex = "男";
people.PAge = 21;
ExecuteEntity.InsertEntity<People>(people);
}
实体类需要两个特性:
[DataTbName("People")] 标识表名
[DataField("Name",IsPrimaryKey=true)] 字段名和一个主键,根据主键删除
使用示例:
People people=new People();
people.SysNo=sysNo;
ExecuteEntity.DeleteEntity<People>(people);
people.SysNo=sysNo;
ExecuteEntity.DeleteEntity<People>(people);
更新一个实体:
}
需要特性:
[DataTbName("People")] 表名
[DataField("Name",IsPrimaryKey=true)] 字段名和一个主键
[DataUpdate()] 参与更新的字段必须实现此特性
例:
}
使用示例:
大至就是这样,还未完。实现更灵活的主法。
PS:有很多人说反射性能很差很差,这个先保留意见下!