当前位置: 首页 > news >正文

C# Dapper 操作Oracle数据库

nuget安装内容 

 1.配置连接字符串 OracleConnectionString这个可用

{"Logging": {"LogLevel": {"Default": "Information","Microsoft.AspNetCore": "Warning"}},"AllowedHosts": "*","DB": {"OracleConnStr": "Password=123456;User ID=system;Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.20.13)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=XE)));","OracleConnectionString": "data source=192.168.20.13:1521/XE;password=123456;user id=system;Incr Pool Size=5;Decr Pool Size=2;","OracleConnStr1": "Data Source=LINKASIA;User Id=system;Password=123456","MySQLConnStr": "server=127.0.0.1;port=3306;user=root;password=123456; database=spongeglueing;","SqliteDBName": "mydb.db"},"SerialPort": {"Name": "COM!"}
}

 2.读取配置文件类


using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Configuration.Json;namespace TireDirection.Helper.Settings
{/// <summary>/// 读取配置信息/// </summary>public class AppSettingsHelper{/// <summary>/// /// </summary>public static IConfiguration Configuration { get; set; }static AppSettingsHelper(){//ReloadOnChange = true 当appsettings.json被修改时重新加载            Configuration = new ConfigurationBuilder().Add(new JsonConfigurationSource { Path = "Config\\appsettings.json", ReloadOnChange = true }).Build();}}
}

3.Dapper数据库操作类 

using Dapper;
using Oracle.ManagedDataAccess.Client;
using TireDirection.Helper.Settings;namespace TireDirection.Helper.DB
{public class DapperOracleHelper{ public class DapperFactory{ public static readonly string ConnectionStr = AppSettingsHelper.Configuration["DB:OracleConnectionString"] ?? "";public static OracleConnection CrateOracleConnection(){var connection = new OracleConnection(ConnectionStr);connection.Open();return connection;}}/// <summary>/// 执行SQL返回集合/// </summary>/// <param name="strSql">sql语句</param>/// <returns></returns>public static List<T> Query<T>(string strSql){using (var conn = DapperFactory.CrateOracleConnection()){return conn.Query<T>(strSql, null).ToList();}} public static List<T> QuerySqlString<T>(string sqlStr,object param){List<T> result = new List<T>();using (var conn = DapperFactory.CrateOracleConnection()){//string query = "SELECT  *  FROM sys_user t where username=:id ";//var par = new { id = "admin" };//var par = JsonConvert.DeserializeObject(param);result = conn.Query<T>(sqlStr, param).ToList();// conn.Insert(new SysUser());// conn.Update(new SysUser());//根据主键更新// conn.Delete(new SysUser()); //根据主键删除}return result;}public static int ExecuteNonQuery(string sql, params SQLiteParameter[] ps){int result = -1;using (var conn = DapperFactory.CrateOracleConnection()){string query = "SELECT  *  FROM sys_user t where username=:id ";var par = new { id = "admin" };result = conn.Execute(query, par);// conn.Insert(new SysUser());// conn.Update(new SysUser());//根据主键更新// conn.Delete(new SysUser()); //根据主键删除}return result;}}
}

4.操作数据实例 

            public static List<DBTestModel> Test( ){List<DBTestModel> result = new List<DBTestModel>();string SqlStr = @$"Select ID, Name,Value from LINKASIA ";try{result = DapperOracleHelper.Query<DBTestModel>(SqlStr);SqlStr = @$"Select ID, Name,Value from LINKASIA where ID=:id";var par =   new { id = "1" };result = DapperOracleHelper.QuerySqlString<DBTestModel>(SqlStr, par);}catch (Exception ex){Log.Logger.Error($"LinkAsiaDB GetAllSpongeGlueing 异常 {ex.Message}");}return result;}

相关文章:

C# Dapper 操作Oracle数据库

nuget安装内容 1.配置连接字符串 OracleConnectionString这个可用 {"Logging": {"LogLevel": {"Default": "Information","Microsoft.AspNetCore": "Warning"}},"AllowedHosts": "*","…...

element侧边栏子路由点击不高亮问题

最近自己封装侧边栏 又碰到了点击子路由不高亮的问题 <template><div class"aside"><el-scrollbar :vertical"true" class"scrollbar_left_nav"><el-menu :default-active"defaultActive" :collapse"$stor…...

C# 试图加载格式不正确的程序。 (异常来自 HRESULT:0x8007000B)

C# 在调用Cdll时&#xff0c;可能会出现 &#xff1a;试图加载格式不正确的程序。 (异常来自 HRESULT:0x8007000B)这个错误。 一般情况下是C#目标平台跟Cdll不兼容&#xff0c;64位跟32位兼容性问题&#xff0c; a.客户端调用Cdll报的错则&#xff0c; 1)允许的话把C#客户端…...

Linux 进程的睡眠和唤醒详解

概要 在Linux中&#xff0c;仅等待CPU时间的进程称为就绪进程&#xff0c;它们被放置在一个运行队列中&#xff0c;一个就绪进程的状 态标志位为 TASK_RUNNING。一旦一个运行中的进程时间片用完&#xff0c; Linux 内核的调度器会剥夺这个进程对CPU的控制权&#xff0c;并且从运…...

AI 绘画Stable Diffusion 研究(十五)SD Embedding详解

大家好&#xff0c;我是风雨无阻。 本期内容&#xff1a; Embedding是什么&#xff1f;Embedding有什么作用&#xff1f;Embedding如何下载安装&#xff1f;如何使用Embedding&#xff1f; 大家还记得 AI 绘画Stable Diffusion 研究&#xff08;七&#xff09; 一文读懂 Stab…...

在Jupyter Notebook中添加Anaconda环境(内核)

在使用前我们先要搞清楚一些事&#xff1a; 我们在安装anaconda的时候它就内置了Jupyter Notebook&#xff0c;这个jupyter初始只有base一个内核&#xff08;显示为Python3&#xff09; 此后其实我们就不需要重复安装完整的jupyter notebook了&#xff0c;只要按需为其添加新的…...

适配器模式简介

概念&#xff1a; 适配器模式&#xff08;Adapter Pattern&#xff09;是一种结构型设计模式&#xff0c;用于将一个类的接口转换成客户端所期望的另一个接口。它允许不兼容的接口之间进行协同工作。 特点&#xff1a; 通过适配器&#xff0c;可以使原本因为接口不匹配而无法…...

MyBatis —— 多种查询及映射关系

前言 上一篇文章中荔枝梳理了有关MyBatis的相关环境配置和核心配置文件及其模板的设置和生成&#xff0c;而在这篇文章中荔枝会着重梳理MyBatis多种查询情况、特殊SQL执行以及两表联查时映射关系的处理。希望对需要的小伙伴有帮助~~~ 文章目录 前言 一、多种查询情况 1.1 查…...

腾讯云服务器镜像TencentOS Server操作系统详细介绍

腾讯云TencentOS Server镜像是腾讯云推出的Linux操作系统&#xff0c;完全兼容CentOS生态和操作方式&#xff0c;TencentOS Server操作系统为云上运行的应用程序提供稳定、安全和高性能的执行环境&#xff0c;TencentOS可以运行在腾讯云CVM全规格实例上&#xff0c;包括黑石物理…...

Docker 中下载各版本的 CentOS、CentOS Steam 方式

如果你跟我一样&#xff0c;想要在docker下载centos的镜像&#xff0c;但是无奈访问不了 https://hub.docker.com/&#xff0c;于是不知道有哪些tag可以下载&#xff0c;该如何办呢&#xff1f; 方法如下&#xff0c;以供参考。 访问&#xff1a;https://quay.io/repository/…...

多线程使用HashMap,HashMap和HashTable和ConcurrentHashMap区别(面试题常考),硬盘IO,顺便回顾volatile

一、回顾&#x1f49b; 谈谈volatile关键字用法 volatile能够保证内存可见性&#xff0c;会强制从主内存中读取数据&#xff0c;此时如果其他线程修改被volatile修饰的变量&#xff0c;可以第一时间读取到最新的值。 二、&#x1f499; HashMap线程不安全没有锁,HashTable线程…...

专线连接交换机设置 – 如何实现高效率的网络连接?

专线链接交换机设置 – 如何实现高效率的网络连接&#xff1f; 什么是专线连接交换机&#xff1f; 在现代互联网中&#xff0c;网络连接的快速和高效是至关重要的。尤其是对于需要大量数据传输和保证网络稳定性的企业和组织来说&#xff0c;专线连接交换机是一项非常重要的技…...

C#,数值计算——Midexp的计算方法与源程序

1 文本格式 using System; namespace Legalsoft.Truffer { public class Midexp : Midpnt { public new double func(double x) { return funk.funk(-Math.Log(x)) / x; } public Midexp(UniVarRealValueFun funcc, double aa, d…...

微信小程序使用本地存储方法wx.setStorageSync()和wx.getStorageSync()

微信小程序的本地存储可以使用wx.setStorageSync()和wx.getStorageSync()方法实现 使用wx.setStorageSync()方法可以将数据以键值对的方式存储到本地存储中&#xff1a; wx.setStorageSync(demo, demo123);获取数据&#xff1a;使用wx.getStorageSync()方法可以从本地存储中获…...

题解:ABC317C - Remembering the Days

题解&#xff1a;ABC317C - Remembering the Days 题目 链接&#xff1a;Atcoder。 链接&#xff1a;洛谷。 难度 算法难度&#xff1a;B。 思维难度&#xff1a;B。 调码难度&#xff1a;C。 综合评价&#xff1a;普及-。 算法 深度优先搜索。 思路 先建图&#x…...

【CSS】简记CSS效果:通过transition(动画过渡属性)实现侧边栏目滑入滑出

需求 在资金明细的页面中&#xff0c;点击按钮时筛选区域从左侧滑出&#xff0c;完成筛选点击确认后调用接口完成数据查询&#xff0c;筛选区域滑入左侧&#xff1b; 基于微信小程序页面实现 wxml代码 <view><!-- 操作按钮 --><button type"primary&qu…...

LeetCode——最大子数组和(中等)

题目 给你一个整数数组 nums &#xff0c;请你找出一个具有最大和的连续子数组&#xff08;子数组最少包含一个元素&#xff09;&#xff0c;返回其最大和。 子数组 是数组中的一个连续部分。 示例 1&#xff1a; 输入&#xff1a;nums [-2,1,-3,4,-1,2,1,-5,4] 输出&#x…...

Zookeeper集成SpringBoot

Curator 是 Apache ZooKeeper 的Java客户端库。 Zookeeper现有常见的Java API如&#xff1a;原生JavaAPI、Curator、ZkClient等。 pom.xml <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"…...

ModaHub魔搭社区:星环科技致力于打造更优越的向量数据库

在数字化时代,数据成为了最重要的资源之一。随着人工智能、大数据等技术的不断发展,向量数据库成为了处理这类数据的关键工具。星环科技作为一家专注于数据存储和管理技术的公司,其重要目标就是将向量数据库打造得更为优越。 在星环科技,有一个专注于向量数据库的团队。这个…...

Dubbo默认使用什么序列化框架?还有哪些?

Dubbo默认使用的序列化框架是Hessian 2.0。Hessian是一种基于二进制的序列化协议&#xff0c;它具有简单、高效的特点&#xff0c;适用于网络传输和存储数据。Hessian在Dubbo中被广泛使用&#xff0c;因为它可以在不同的编程语言之间进行对象的序列化和反序列化。 除了Hessian…...

GHelper:华硕笔记本性能优化的轻量解决方案 - 告别Armoury Crate臃肿体验

GHelper&#xff1a;华硕笔记本性能优化的轻量解决方案 - 告别Armoury Crate臃肿体验 【免费下载链接】g-helper Lightweight, open-source control tool for ASUS laptops and ROG Ally. Manage performance modes, fans, GPU, battery, and RGB lighting across Zephyrus, Fl…...

BiliTools:解决B站资源离线访问难题的跨平台技术方案

BiliTools&#xff1a;解决B站资源离线访问难题的跨平台技术方案 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱&#xff0c;支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools 在…...

seo推广如何策划

SEO推广如何策划&#xff1a;全面指南 在当今数字化时代&#xff0c;搜索引擎优化&#xff08;SEO&#xff09;推广已成为企业提升网站流量、增加品牌曝光的关键手段。如何有效地策划一套适合自己业务的SEO推广方案却不是件容易的事。本文将从SEO推广的基础概念、问题分析、原…...

如何快速搭建你的专属Galgame社区:TouchGal一站式解决方案完整指南

如何快速搭建你的专属Galgame社区&#xff1a;TouchGal一站式解决方案完整指南 【免费下载链接】kun-touchgal-next TouchGAL是立足于分享快乐的一站式Galgame文化社区, 为Gal爱好者提供一片净土! 项目地址: https://gitcode.com/gh_mirrors/ku/kun-touchgal-next 你是否…...

KEIL MDK实战:3分钟将常用C文件封装成LIB库(附标准库管理技巧)

KEIL MDK高效工程管理&#xff1a;C文件封装LIB库的进阶实践 在嵌入式开发领域&#xff0c;随着项目规模扩大&#xff0c;工程文件管理往往成为影响开发效率的关键瓶颈。特别是对于STM32开发者而言&#xff0c;标准外设库、常用算法模块等重复使用的代码如何高效管理&#xff0…...

10大经典量化策略:实战逻辑+买卖信号+风险点

目录 1. 趋势跟踪策略&#xff08;最主流、最稳&#xff09; 2. 均值回归策略&#xff08;震荡市神器&#xff09; 3. 多因子选股策略&#xff08;机构标配&#xff09; 4. 动量反转策略&#xff08;A 股特别有效&#xff09; 5. 统计套利 / 配对交易&#xff08;低风险&a…...

5分钟学会在Windows上直接安装Android应用:APK-Installer终极指南

5分钟学会在Windows上直接安装Android应用&#xff1a;APK-Installer终极指南 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 你是否曾经想在Windows电脑上运行某个只有…...

告别系统卡顿:RyTuneX全方位性能优化指南

告别系统卡顿&#xff1a;RyTuneX全方位性能优化指南 【免费下载链接】RyTuneX RyTuneX is a cutting-edge optimizer built with the WinUI 3 framework, designed to amplify the performance of Windows devices. Crafted for both Windows 10 and 11. 项目地址: https://…...

3步实现音频自由:QMCFLAC2MP3高效解密与跨平台应用指南

3步实现音频自由&#xff1a;QMCFLAC2MP3高效解密与跨平台应用指南 【免费下载链接】qmcflac2mp3 直接将qmcflac文件转换成mp3文件&#xff0c;突破QQ音乐的格式限制 项目地址: https://gitcode.com/gh_mirrors/qm/qmcflac2mp3 一、音乐收藏者的困境&#xff1a;当专有格…...

一文吃透Redis集群:架构、原理、搭建与实战优化

在分布式系统中&#xff0c;Redis作为高性能的键值存储中间件&#xff0c;单机部署早已无法满足高并发、大容量的业务需求——当数据量突破单机内存上限、QPS达到万级以上&#xff0c;单机Redis的单点故障、性能瓶颈会直接影响业务稳定性。此时&#xff0c;Redis集群&#xff0…...