nicye

导航

<2008年3月>
2425262728291
2345678
9101112131415
16171819202122
23242526272829
303112345

统计

与我联系

搜索

 

常用链接

留言簿(2)

我参加的小组

我参与的团队

我的标签

随笔档案

相册

Friends

最新评论

阅读排行榜

评论排行榜

2008年3月25日 #

[分享] NicPetShop 介绍并提供下载

您在 .Net 2.0 开发吗?


一个新的开发模式,基于 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>

    D、很轻易的得到对应 ID 的所有或自定义获取多少条集合
        List<UserInfo> users = User.GetItemsByUser_group_id(user_group_id); //所有
        List<UserInfo> users = User.GetItemsByUser_group_id(10, user_group_id); //前 10 条
        List<UserInfo> users = User.GetItemsByUser_group_id(new Limit(10, 20), user_group_id); //第 10 到 20 条

    E、按主键或惟一索引生成相应的方法
        int rows = User.Delete(id);
        int rows = User.DeleteByUserName(userName);

        UserInfo user = User.GetItem(id);
        UserInfo user = User.GetItemByUserName(userName);

    F、很轻易的得到所有或自定义获取多少条集合
        List<UserInfo> users = User.GetItems(); //所有
        List<UserInfo> users = User.GetItems(10); //前 10 条
        List<UserInfo> users = User.GetItems(new Limit(10, 20)); //第 10 到 20 条

    H、ConnectionManager 安全管理 SqlConnection,对多线程安全使用
        SqlConnection conn = ConnectionManager.GetConnection();

    I、自动生成 RepeaterPager.cs,DataListPager.cs,GridViewPager.cs,它们分别继承于 System.Web.UI.WebControl.Repeater,System.Web.UI.WebControl.DataList,System.Web.UI.WebControl.GridView,支持设计时

    J、将自己的 web 开发经验常用开发代码集中到生成的解决方案中
        web.config,web.sitemap 的配置
        App_Code\BasePage.cs 的建立,自动添加 Title,meta-keywords,meta-content,siteMapPath操作
        connection.aspx 查看当前 web 程序使用的 sqlconnection 情况

6、将永久免费给大家使用






下载地址:NicPetShop.rar
     http://www.cnblogs.com/Files/kellynic/NicPetShop.rar
     含两个项目说明

为了方便程序更新,本版本为 .net remoting 版本
请确保您的 sql server 2005 能被外网访问得到,不支持生成本地的数据库。

小提示:如果您是局域网,但又想生成,可以试试安装“花生壳”。





posted @ 2008-03-25 18:14 nicye 阅读(2457) | 评论 (3)编辑