Abp.NHibernate连接PostgreSQl数据库的方法

Abp.NHibernate动态库连接PostgreSQl数据库,供大家参考,具体内容如下

初次接触Abp框架,其框架中封装的操作各类数据的方法还是很好用的,本人还在进一步的学习当中,并将利用abp.NHibernate类库操作PostgreSQL数据的相关方法做一记录,不足之处让评论指点扔砖。

话不多说,直接开干:

1、vs 新建一个项目,(窗体或者控制台程序或者测试程序)

2、NuGet 获取类库(adp.NHibernate)

还需安装一个pgSQl 对应的驱动

3、新建一个继承AbpModule的类,用于配置数据库连接信息和实体映射的相关信息

using System.Reflection;
using Abp.Configuration.Startup;
using Abp.Modules;
using Abp.NHibernate;
using FluentNHibernate.Cfg.Db;

/**
* 命名空间: abpPgtest
* 功 能: 配置数据库
* 类 名: NhHibernateModel
* 作 者: 东腾
* 时 间: 2018/1/29 17:04:27
*/
namespace abpPgtest
{
  [DependsOn(typeof(AbpNHibernateModule))]
  public class NhHibernateModel:AbpModule
  {
    //重写PreInitialize方法
    public override void PreInitialize()
    {
      var pgStr = "Server=localhost;Port=5432;Database=DTDB;User Id=DT;Password=DT";

      var config = Configuration.Modules.AbpNHibernate().FluentConfiguration
        .Database(PostgreSQLConfiguration.Standard.ConnectionString(pgStr));
      config.Mappings(a => a.FluentMappings.AddFromAssembly(Assembly.GetEntryAssembly()));
      //base.PreInitialize();
    }
    //重写Initialize方法
    public override void Initialize()
    {
      IocManager.RegisterAssemblyByConvention(Assembly.GetCallingAssembly());
      // base.Initialize();
    }
  }
}

4、新建实体和实体映射

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Abp.Domain.Entities;
using Abp.NHibernate.EntityMappings;

/**
* 命名空间: abpPgtest.testModel
* 功 能: 数据库表实体及映射
* 类 名: testModel
* 作 者: 东腾
* 时 间: 2018/1/29 17:21:19
*/
namespace abpPgtest.testModel
{
  public class testModelMap : EntityMap<testModel>
  {
    public testModelMap():base("dt_tb_test")
    {
      //Id(x => x.Id).GeneratedBy.Increment();//数据库表中没有自增的Id时需要映射一个Id
      Map(x => x.Company);
      Map(x => x.Name);

      //References<userModel>(a => a.Id).Not.LazyLoad().Column("外键ID");//数据库中有关联表时使用

    }
  }
  public class testModel:Entity<int>
  {
    public virtual int Id { get; set; }

    public virtual string Name { get; set; }

    public virtual string Company { get; set; }
  }
}

5、数据库中新建表 dt_tb_test

6、注册并初始化abp连接

var bootstrapper = AbpBootstrapper.Create<NhHibernateModel>();
bootstrapper.Initialize();
var resp = bootstrapper.IocManager.Resolve<IRepository<testModel>>();

7、向数据库中添加数据

//添加数据
  var model = new testModel
    {
     Name = "东腾",
     Company = "东腾科技"
    };
 resp.Insert(model);

打开数据库查看结果:

8、更新数据

//更新数据
  var m = resp.Get(1);
  m.Name = "东腾1";
  resp.Update(m);

查看结果

9、查询数据

查询所有的数据

var allList = resp.GetAllList();

按照条件进行查询

10、删除数据(可以根据多种方式进行删除,用id或者where条件进行删除)

//删除数据,更具where条件删除
  Expression<Func<testModel, bool>> where = a =>a.Id==3;
  resp.Delete(where);

id为3的一条数据被删除

11、总结:

abp.NHibernate只是ABP中对NHIbernate的一个封装,只要正确注册和访问数据库,其余的就是ORM操作数据库,就简单了。其他的关系型数据都用类似的做法即可。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

您可能感兴趣的文章:

  • Python实现连接postgresql数据库的方法分析
  • Java连接postgresql数据库的示例代码
  • Node.js连接postgreSQL并进行数据操作
  • Python连接PostgreSQL数据库的方法
  • php连接与操作PostgreSQL数据库的方法
  • PostgreSQL数据库服务端监听设置及客户端连接方法教程
(0)

相关推荐

  • Node.js连接postgreSQL并进行数据操作

    前言 PostgreSql是一个面向对象的关系数据库,postgis是一个基于PostgreSql的空间数据库插件,主要用于管理地理空间数据.因此在GIS领域,广泛使用PostgreSql作为空间数据库. 首先使用npm安装数据库连接模块: npm install --save pg 连接池创建 然后代码中引入pg模块,并编写数据库配置: var pg = require('pg'); // 数据库配置 var config = { user:"postgres", database:

  • PostgreSQL数据库服务端监听设置及客户端连接方法教程

    众所周知,PostgreSQL 是一个自由的对象-关系数据库服务器(数据库管理系统),是一个可以免费使用的开放源代码数据库系统.本文详细介绍了PostgreSQL数据库服务端监听设置及客户端连接方法,具体如下: 一.背景介绍: 本文所述PostgreSQL服务端运行在RedHat Linux上,IP为:192.168.230.128 客户端安装在Windows XP上, IP为:192.168.230.1 二.配置方法: 1.修改服务端/opt/postgresql/data/postgresq

  • Python连接PostgreSQL数据库的方法

    前言 其实在Python中可以用来连接PostgreSQL的模块很多,这里比较推荐psycopg2.psycopg2安装起来非常的简单(pip install psycopg2),这里主要重点介绍下如何使用. 连接数据库: import psycopg2 conn = psycopg2.connect(host="10.100.157.168",user="postgres",password="postgres",database="

  • Java连接postgresql数据库的示例代码

    本文介绍了Java连接postgresql数据库的示例代码,分享给大家,具体如下: 1.下载驱动jar 下载地址:https://jdbc.postgresql.org/download.html 2.导入jar包 新建lib文件夹,将下载的jar驱动包拖到文件夹中. 将jar驱动包添加到Libraries 3.程序代码如下:HelloWorld.java package test; import java.sql.Connection; import java.sql.DriverManage

  • Python实现连接postgresql数据库的方法分析

    本文实例讲述了Python实现连接postgresql数据库的方法.分享给大家供大家参考,具体如下: python可以通过第三方模块连接postgresql. 比较有名的有psycopg2和python3-postgresql (一)psycopg2 ubuntu下安装 sudo apt-get install python3-psycopg2 创建一个test.py文件 import psycopg2 # 数据库连接参数 conn = psycopg2.connect(database="te

  • php连接与操作PostgreSQL数据库的方法

    本文实例讲述了php连接与操作PostgreSQL数据库的方法.分享给大家供大家参考. 具体实现方法如下: 复制代码 代码如下: $pg=@pg_connect("host=localhost user=postgres password=sa dbname=employes") or die("can't connect to database."); $query="select * from employes order by serial_no&q

  • Abp.NHibernate连接PostgreSQl数据库的方法

    Abp.NHibernate动态库连接PostgreSQl数据库,供大家参考,具体内容如下 初次接触Abp框架,其框架中封装的操作各类数据的方法还是很好用的,本人还在进一步的学习当中,并将利用abp.NHibernate类库操作PostgreSQL数据的相关方法做一记录,不足之处让评论指点扔砖. 话不多说,直接开干: 1.vs 新建一个项目,(窗体或者控制台程序或者测试程序) 2.NuGet 获取类库(adp.NHibernate) 还需安装一个pgSQl 对应的驱动 3.新建一个继承AbpMo

  • PHP连接及操作PostgreSQL数据库的方法详解

    本文实例讲述了PHP连接及操作PostgreSQL数据库的方法.分享给大家供大家参考,具体如下: PostgreSQL扩展在默认情况下在最新版本的PHP 5.3.x中是启用的. 可以在编译时使用--without-pgsql来禁用它.仍然可以使用yum命令来安装PHP-PostgreSQL接口: yum install php-pgsql 在开始使用PHP连接PostgreSQL接口之前,请先在PostgreSQL安装目录中找到pg_hba.conf文件,并添加以下行: # IPv4 local

  • SpringBoot连接使用PostgreSql数据库的方法

    一.介绍 此次更新时间:2020-10-28,现在是上班时间,偷更一下.其实使用IDEA的话无需配置Maven什么的,如果你们公司不是强制要求使用Eclipse的话,只需要有个JDK的环境即可,IDEA自带了一个版本的Maven,还是挺新的,目前IDEA最新版2.2.3的版本.我们也不用按照下面这个步骤去下载Spring Initializr,我们在IDEA中新建项目选择到Maven就行了,干净简洁. 目前在Resources目录下的application大多数是使用yml语法了.现在已经太长时

  • Java连接各种数据库的方法

    本文实例讲述了Java连接各种数据库的方法.分享给大家供大家参考.具体如下: 复制代码 代码如下: //MySQL:       String Driver="com.mysql.jdbc.Driver";   //驱动程序      String URL="jdbc:mysql://localhost:3306/db_name";    //连接的URL,db_name为数据库名       String Username="username"

  • Rust 连接 PostgreSQL 数据库的详细过程

    pgxr 是一个 Rust 的 crate 库,可以实现用 Rust 语言来编写 PostgreSQL 的扩展函数(相当于存储过程). 这次,我们使用 postgres 这个 crate 来连接和操作 PostgreSQL 数据库. 创建好项目后,在 cargo.toml 里添加 postgres 的依赖: 首先,导入相关的类型,并创建一个 Person struct: 再创建 create_db 函数,用来创建数据库和表,它返回一个 Result,里面可能是 Client 或错误: 注意,Cl

  • JSP使用JDBC连接MYSQL数据库的方法

    本文实例讲述了JSP使用JDBC连接MYSQL数据库的方法.分享给大家供大家参考,具体如下: 1. 可在 http://www.mysql.com/products/connector-j/index.html下载MySQL JDBC驱动程序mysql-connector-java-*.jar,如我下载的是mysql-connector-java-5.1.18-bin.jar并加入到ClassPath下面,或加入到项目中.   2. 注册JDBC驱动程序 try { Class.forName(

  • 使用PL/SQL Developer连接Oracle数据库的方法图解

    之前因为项目的原因需要使用Oracle数据库,由于时间有限没办法从基础开始学习,而且oracle操作的命令界面又太不友好,于是就找到了PL/SQL Developer这个很好用的软件来间接使用数据库. 下面简单介绍一下如何用这个软件连接Oracle数据库. 第一步 安装Oracle Database和PL/SQL Developer 这一步网上有很多的教程就不详细介绍.Oracle可以直接到官网去下载,在安装中注意几个问题就行: 1.一定要记住自己全局数据库名字和口令,这个在后面连接的时候很重要

随机推荐