使用NSun(框架)快速开发项目(六)NSun1.0.0.7发布


      在此版本之前有人问过。是否支持其他数据库,这里要说的是
NSun是对Nbearlite的封装。自然继承了Nbearlite的多数据库支持。只是所开放的实体生成工具没有对此进行支持。对此支持我会在一下文章内写具体的写一下对Mysql的支持(其他的都一样)。

还要说明的就是,上次发布的1.0.0.5版本,跨了2个版本的发布。因为1.0.0.31.0.0.4是在内部进行了测试所以没有开发改动不是很大继续对代码进行了优化操作。这次的1.0.0.7也同样如此。切入正题。

1.0.0.7更新内容如下:

1.新增日志功能(默认是文件新式),可以通过配置相应的sql语句进行简单的错误插入

2.ExistsWhere方法 通过条件查看是否有记录

3.修改 NSunToBLLInfo.exe 简单业务代码生成器

4.对配置信息进行了重新修改

5.对查询方法进行了优化

6.对代码进行局部重构

 

      接下来先对日志功能进行一下简单的说明:

       日志的配置很简单。配置在<appSettings> 默认不配置的话。存放方式是文本的形式。默认的路径是在应用用程序下的NsunLog.log文件中的。

      两种配置方法如下。可以同时配置两种不同的方式。可以在程序中自行修改任意一种日志方式。

 

<appSettings>

    <!-- LogPath 保存为log文件 默认在程序集下的NsunLog.log

    LogCommand insert sql 语句 参数为@error 具体在DBFactory.cs配置-->

    <add key="LogPath" value="C:"""/>

    <add key="LogCommand" value="insert into us(name) values(@error)"/>

</appSettings>

          

       日志选择输入的类型在ConnectionDBQuery可以配置:

private readonly static ConnectionDBQuery db;

public readonly static DBQuery<UsInfo> dbUs;

        static DBFactory()

        {

            db = ConnectionDBQuery.Default;

            db.Logtype = LogType.database;

            dbUs = new DBQuery<UsInfo>(db);

        }

 

       Config 配置信息修改:

              所配置的是相应实体生成后所在的程序集以及命名空间。

<configSections>

    <section name="entityNSun" type="NSun.EntityConfigurationSection, NSun.Core"/>

 </configSections>

 <!-- entityAssembly:程序集名称 entityNameSpace:实体命名空间-->

<entityNSun

entityAssembly="NSunSample"

entityNameSpace="NSunSample.Entity"/>

 

    NSunToBLLInfo.exe 的修改是对因实体所在命名空间进行引用,省去了不必要的手动引用实体所在空间。

 

       接下来对数据库支持的方法(对于生成器,现只安装mssql数据库,对于其他数据库的支持会继续完善),这里需要一个Nbearlite的表映射的生成器,NBearLite.QueryColumnsGenerator.exe 下载Nbearlite后会在dist文件夹内找到。这里我会提供此生成器的下载。这里说一下具体的操作。

       1.打开NBearLite.QueryColumnsGenerator.exe ,在Connection String的文本框内填写对应数据库的链接字符串。

       2.选择对应要生成的数据库这里选Mysql数据库,在output namspce 中填写生成实体后对应的命名空间。

       3.点击Connect进行连接。会看到对应左边Tables显示对应的数据表,对其选择,然后点击Generate code 进行代码的生成。这里拷贝代码到对因的cs文件中内放入对应的程序集下。也可以点击Save output as 进行代码的另存为。

       好了对于Nbearlite表的映射已经生成好了,接下来我们要创建NSun的实体类。

在此之前要说的是2个特性:

       [IncrementAttribute()]

看名称大家该知道了,自增列。

    [PrimaryAttribute()]

这个也不用说,主键列。

 

1.这两个是修饰字段自增和主键的2个特性。所以接下来的实体编写也需要用到。

       2.实体都需要继承自EntityAbstract

    3.对应编写的实体要与之前生成实体想对应。

        例如:表名称是 users 那么用NBearLite.QueryColumnsGenerator.exe生成后名字也与之相匹配为users 这里注意的是。NSun生成的实体都以Info 为结束 所以对应的NSun实体代码如下:

       [Serializable]

    public class usersInfo : EntityAbstract

    {

        private int _id;

        private string _name;

        private string _pass;

        [IncrementAttribute()]

        [PrimaryAttribute()]

        public int id

        {

            set { _id = value; }

            get { return _id; }

        }

        public string name

        {

            set { _name = value; }

            get { return _name; }

        }

        public string pass

        {

            set { _pass = value; }

            get { return _pass; }

        }

}

 

4.呵呵,是不是有点麻烦?大家见谅。生成器不久会出。

 

    5.在项目中引入 NBearLite.AdditionalDbProviders.dll 以及相关数据库的连接dll

   

    6.如有遗漏的地方,大家可以下载sample查看。

 

    下载地址:

        Binhttps://files.cnblogs.com/duanseven/NSun1.0.0.7Bin.rar

        Samplehttps://files.cnblogs.com/duanseven/NSunSample1.0.0.7.rar

 

    相关文章:

        Nsun 1.0.0.5发布:

        http://www.cnblogs.com/duanseven/archive/2009/09/03/1559480.html

Nsun 1.0.0.2发布:
http://www.cnblogs.com/duanseven/archive/2009/08/28/1555672.html
Nsun 1.0.0.1发布:
http://www.cnblogs.com/duanseven/archive/2009/08/24/1552793.html
Nsun 性能测试
http://www.cnblogs.com/duanseven/archive/2009/08/22/1551933.html
Nsun 发布
http://www.cnblogs.com/duanseven/archive/2009/08/21/NSun.html

 

欢迎大家能够多指点,谢谢。

 

posted @ 2009-09-27 12:07  Dacey  Views(4620)  Comments(0Edit  收藏  举报