一个新的开发模式,基于 c# 2.0 + MSSQL 2005
为什么使用 NicPetShop ?
1、在使用多层开发,是否存在 inner join 查询的痛苦?
2、在使用 orM 开发,是否觉得系统很臃肿,调用方法也不尽人意(简单)?
3、您是否经常为了分页而不断从旧的代码中 COPY 几十行代码,也保证不了分页的易用通用?
4、您的开发模式使用起来简单吗?
NicPetShop 可以解决
1、采用多层开发架构
2、采用 c# 强类型与数据库表映射,并且引入 .net 2.0 的 System.Nullable<T> 支持可空类型
3、能将数据库的关系映射到 c#,让您使用更方便,让你不再为 inner join 查询烦恼
类似 <%# Eval("userGroupInfo.GroupName") %> 这样的绑定方式List<UserInfo> User.GetItemsByUser_group_id(int user_group_id); 这样的快速方法生成
4、高效绑定分页,支持 repeater,datalist,gridview,并且支持设计时(傻瓜式)分页,也可将分页写入代码中,2行以内代码就可以为你制造高性能的多种分页方案
dataListPager1.DataSouce = User.GetItemsByUser_group_id(user_group_id, dataListPager1.Pager);dataListPager1.DataBind();
5、语法简洁,功能强大
A、添加数据后即刻返回当前插入的对象(对应数据库表中新插入的行)
UserInfo user = User.Insert(null, "nic", "******");//UserInfo user = new UserInfo();//user.UserName = "nic";//user.PassWord = "******";//user = User.Insert(user);
B、按数据库建立的关系直接访问到主表对象UserInfo user = User.GetItem(1);User_groupInfo user_group = user.user_groupInfo;
C、在页面上绑定项时很轻易的在关系间访问,特别对于无限级类别表的使用(parent_id -> self.id 关系)
<ItemTemplate> <%# Eval("Id") %> <%# Eval("UserName") %> <%# Eval("user_groupInfo.GroupName") %> </ItemTemplate>

