引言:
我们在做项目开发的过程中,经常会遇到把许多条目的信息的选择情况记录到用户的相关设置当中问题,比较笨的办法是每一个条目对应用户设置表中的一个属性字段,但这样的设计似乎扩展性很差,效率也好不到哪里去,这里提供一种快速存储N条记录的方案,即用一个整型数据来记录条目的选择状态。
内容:
一、表结构:
两个Table
Item 项目表
Key: ID
Field name
Type
Length
Default
Description
ID
int
4
ID(自动编号)
ItemName
Nvarchar
50
0
条目名称
UserInfo 用户信息表
Key: UserID
Field name
Type
Length
Default
Description
UserID
int
4
ID(自动编号)
ItemRecord
int
4
0
条目选择记录
一点说明:我们的目的就是要把用户对Item中所有的记录的选择情况进行记录,经过一定的处理存储到ItemRecord中。
二、数据层类:
四个:QuickItem、QuickItemCollection、UserInfo、UserInfoCollection
一点说明:
1、 QuicItem:对条目信息进行处理的类,包含四种方法,即对数据的添、删、改、读。
2、 QuickItemCollection:这是个查询类,根据一定条件读取条目的集合。
3、 UserInfo:对用户信息进行处理的类,包含四种方法,即对数据的添、删、改、读。
4、 UserInfoCollection:这是个查询类,根据一定条件读取用户信息的集合。
三、表示层调用处理:
//取得个人选中项目的信息
UserInfo ui = new UserInfo();
ui.ID=1;
ui.GetInfoByID();
int itemRecord=ui.ItemRecord;
//取得所有项目的ID数组
QuickItemCollection qic = new QuickItemCollection();
qic.GetAllInfo();
int qicCount=qic.Count;
string itemIDArrayString=null;
for(int i=0;i<qicCount;i++)
{
itemIDArrayString+=","+qic[i].ID;
}
itemIDArrayString=itemIDArrayString.Substring(1,itemIDArrayString.Length-1);
char[] dot = new char[]{'''',''''};
string[] itemIDArray = itemIDArrayString.Split(dot);
//调用方法返回选中的项目的ID数组
string [] selectItemArray=Select [1] [2] 下一页 |