`
wangdeshui
  • 浏览: 256917 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

NBear学习笔记(一)

阅读更多

使用已有数据库。(之前先设计实体,再自动生成数据库,发现每次重新生成时,数据库测试数据都清空了)。

本文参考Teddy's Knowledge Base的相关文章,这篇文章只演示单表操作.

Step1: 创建数据库NBearDB

<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> -->CREATE TABLE [dbo].[User] (
    
[ID] [uniqueidentifier] NOT NULL ,
    
[FirstName] [nvarchar] (50) ,
    
[Status] [bit] NULL ,
    
[Birthday] [datetime] NULL ,
    
[Email] [nvarchar] (127)
ON [PRIMARY]

 

Step2:创建解决方案和配置

         (1)安装下载的Nbear组件下dist\SetupNBearVsPlugin.exe插件(可自动生成实体类)

         (2)打开VS2005,新建一个空的解决方案,添加两个C#类库工程EntityDesigns和Entities,删除自动生成的class1.cs.

         (3)添加一个website的网站项目。

         (4)在Entities下添加Entities.cs, 在网站根目录下添加web.config文件和EntityConfig.xml文件.

         (5)修改web.config文件

<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --><configSections>
    
<section name="entityConfig" type="NBear.Common.EntityConfigurationSection, NBear.Common"/>
</configSections>
<entityConfig>
    
<includes>
        
<add key="Sample Entity Config" value="~/EntityConfig.xml"/>
    
</includes>
</entityConfig>
<appSettings/>
<connectionStrings>
    
<add name="DbName" connectionString="Server=WDS;Database=NBearDB;Uid=sa;Pwd=sa"
       providerName
="NBear.Data.SqlServer.SqlDbProvider"/>
</connectionStrings>


(6)在EntityDesigns目录下添加EntityDesignToEntityConfig.xml文件,内容如下:

<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --><?xml version="1.0" encoding="utf-8" ?>
<EntityDesignToEntityConfiguration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xmlns:xsd
="http://www.w3.org/2001/XMLSchema">
  
<CompileMode>Debug</CompileMode>
  
<InputDllName>EntityDesigns.dll</InputDllName>   //实体设计类
  
<OutputNamespace>Entities</OutputNamespace>  //实体类
  
<OutputLanguage>C#</OutputLanguage>              //输出语言
  
<!--<OutputCodeFileEncoding>utf-8</OutputCodeFileEncoding>-->
  
<EntityCodePath>..\Entities\Entities.cs</EntityCodePath>   //实体类文件
  
<EntityConfigPath>..\website\EntityConfig.xml</EntityConfigPath>  
  
<SqlSync enable="false">    //更改实体时,是否同步更新数据库,建议设为false,否则将清空现有数据库的数据
    
<SqlServerFolder>C:\Program Files\Microsoft SQL Server\80\Tools\Binn</SqlServerFolder>
    
<ServerName>WDS</ServerName>
    
<UserID>sa</UserID>
    
<Password>sa</Password>
    
<DatabaseName>NBearDB</DatabaseName>
  
</SqlSync>
</EntityDesignToEntityConfiguration>

(7)在EntityDesigns目录下添加EntityDesigns.cs

(8)打开下载的Nbear组件下dist\NBear.Tools.DbToEntityDesign.exe程序 ,设置连接字符串,我的是这样:

   Server=WDS;Database=NBearDB;Uid=sa;Pwd=sa  点击connect, 选择要生成的表,点击Generate Entities Design.将会得到下面的代码:

<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> -->using System;
using System.Collections.Generic;
using System.Text;
using NBear.Common.Design;
namespace EntityDesigns
{
public interface User : Entity
{
    [PrimaryKey]
    Guid ID { 
getset; }
    [SqlType(
"nvarchar(50)")]
    
string FirstName { getset; }
    
bool? Status { getset; }
    DateTime
? Birthday { getset; }
    [SqlType(
"nvarchar(127)")]
    
string Email { getset; }
}
}

拷贝上面的代码到EntityDesigns.cs,为EntityDesigns添加NBear.Common.Design引用.

(9)编译EntityDesigns工程,编译成功,刚才添加Entities.cs,EntityConfig.xml文件将被自动填入正确的内容。

(10)为Entities工程引用NBear.Common,然后编译Entities工程。

(11)为WebSite添加Entities项目编译后的Entities.dll.再引用NBear.Data

 

Step 3 :OK,现在开始使用了。

<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> -->using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using Entities;
using NBear.Common;
using NBear.Data;

public partial class _Default : System.Web.UI.Page
{
    
protected void Page_Load(object sender, EventArgs e)
    {

   
//取得数据
        Gateway gateway = new Gateway("DbName");
        User[] u 
= gateway.FindArray<User>();

        GridView1.DataSource 
= u;
        GridView1.DataBind();
    }

}

//添加数据

      Gateway gateway 
= new Gateway("DbName");
        User d 
= new User();
        d.Email 
= "jackxfsdfsdf";
        d.Name 
= "very good";
        d.Status 
= true;
        gateway.Save(d);

备注:加入我们把FirstName字段改为Name,那么我们只需要把EntityDesigns.cs里把这句改为

        [MappingName("Name")]
        string FirstName{ get; set; }

        重新编译EntityDesign工程就可以了。

运行,大功告成。

分享到:
评论

相关推荐

    NBear

    NBear是.NET平台上的一个高性能、轻量级的ORM(对象关系映射)框架,它在.NET编程领域中被广泛使用。NBear2.5.0版本是该框架的一个重要迭代,提供了许多新特性和改进,旨在提升开发效率并优化数据库操作性能。 首先...

    ASP.NET框架:NBear

    ASP.NET框架:NBear是一个高性能、轻量级的.NET数据访问技术,主要目的是简化数据库操作,提高开发效率。NBear是基于.NET Framework构建的,它提供了面向对象的接口,允许开发者以更直观的方式进行数据库交互,同时...

    NBear访问多个数据库

    NBear是一个开源的.NET ORM(对象关系映射)框架,它提供了一种高效、灵活的方式来操作数据库,而无需编写大量的SQL语句。在这个场景下,NBear允许开发者在同一个应用中管理并同时与多个不同的数据库进行交互。 ...

    Nbear ORM

    NBear ORM(Object-Relational Mapping)是一个高效、灵活且功能强大的.NET数据访问框架,旨在简化.NET开发者与数据库之间的交互。它通过提供对象关系映射功能,使得开发人员可以使用面向对象的方式来操作数据库,而...

    使用NBear项目模板快速建立项目框架

    NBear是一个高性能、轻量级的.NET ORM(对象关系映射)框架,它提供了一种简单而强大的方式来处理数据库操作。在这个主题中,“使用NBear项目模板快速建立项目框架”意味着我们可以借助NBear提供的项目模板,高效地...

    Nbear

    ** 请修改扩展名为ZIP Nbear V3.7.2源代码 类库 VS插件等

    nbear_petshop.1.0.0

    《NBear框架详解——以nbear_petshop.1.0.0为例》 NBear框架,作为一款基于C#语言的高性能、轻量...通过对这个项目的深入学习,开发者不仅可以掌握NBear的基本用法,还能进一步理解ORM在实际项目中的价值和应用技巧。

    Nbear中文帮助手册

    NBear是一个全面的.NET开发框架,旨在提供高效、便捷的数据持久化、序列化以及服务处理能力,特别适合ASP.NET开发环境。下面我们将深入探讨NBear的各个关键特性。 首先,NBear的核心之一是它的泛型、强类型的数据...

    NBear+Anthem 应用案列

    总的来说,NBear+Anthem的应用案例提供了一个实战的学习平台,展示了这两个工具在实际项目中的集成和应用。通过研究和改进这个案例,开发者不仅可以了解ORM框架和UI控件集的基本用法,还能提高解决问题和优化代码的...

    NBear源码与帮助文档

    NBear是一款针对.NET Framework开发的高性能、轻量级的ORM(对象关系映射)框架,它简化了数据库操作,使得开发者可以使用面向对象的方式处理数据。NBear在.NET社区中享有较高的声誉,因其高效、灵活和强大的特性而...

    Nbear使用手册

    Nbear使用手册(版本: 2.4.1)

    NBear3.6.6

    综上所述,NBear3.6.6 提供了一个完整的ORM解决方案,包括源代码、设计工具和详细的文档,使得开发者无论是学习、开发还是维护,都能从中获益。了解并掌握这些知识点,对于提升.NET平台上的数据库应用开发能力至关...

    快速开发框架设计NBear V3.3.9 Stable

    NBear原名Ilungasoft Framework,是主要有Teddy开发的一个基于.Net 2.0 (C# 2.0, ASP.NET 2.0)的快速开发框架,她将使您基于.Net 2.0的web/winform/distributed开发变得异常高效、性能卓越。

    NBear+NBear开发BBS系统源码_nbearbbs.zip

    NBear是一个高性能、轻量级且易于使用的.NET框架,它主要设计用于简化数据库访问和对象关系映射(ORM)。NBear BBS系统源码提供了一个实际应用示例,展示了如何利用NBear框架来构建一个论坛社区系统。在这个系统中,...

    ASP.NET-[论坛社区]NBear+NBear开发BBS系统源码.zip

    源码分析和学习"ASP.NET-[论坛社区]NBBear+NBBear开发BBS系统源码_nbearbbs.rar",可以帮助开发者深入了解ASP.NET和NBear的结合使用,理解如何在实际项目中应用ORM框架,提高开发效率,同时也可以学习到论坛系统的...

    NBearV3.rar_nbear

    NBear是一款专为.NET 2.0和C#2.0设计的开源软件开发框架,其核心目的是简化开发流程,提高开发效率,并确保系统具备良好的性能和可扩展性。NBear不仅提供了丰富的类库,还开放了全部源代码,允许开发者深入理解其...

    asp.net 优秀框架NBearV3.5.6_binary

    总之,NBear是一款强大的ORM工具,尽管在某些特定情况下可能存在一定的学习曲线,但其性能和灵活性使其成为ASP.NET开发中的有力选择。通过深入理解和熟练运用NBear,开发者可以提升开发效率,减少对数据库底层操作的...

    Ilungasoft Framework 正式更名为 NBear

    此外,对于学习和理解框架内部工作原理的开发者而言,源码的开放也是一大福音。 “工具”标签暗示了NBear可能包含一些配套的开发工具,比如数据字典生成器。数据字典生成器是一种实用工具,能够自动生成数据库表的...

    ASP.NET源码——[论坛社区]NBear+NBear开发BBS系统源码.zip

    【ASP.NET源码——[论坛社区]NBear+NBear开发BBS系统源码.zip】是一个包含使用ASP.NET技术和NBear ORM框架开发的论坛社区系统的完整源代码包。这个源码示例对于学习和理解ASP.NET web应用程序设计,以及如何利用...

Global site tag (gtag.js) - Google Analytics