Logo

C# Oracle数据库操作类

photo

2022年03月07日

  1 using System;
  2 using System.Data;
  3 using System.Collections.Generic;
  4 using System.Configuration;
  5 using System.Data.OracleClient;
  6 using System.Text;
  7 using System.IO;
  8 
  9 /// <summary>  
 10 /// Oracle数据库操作类  
 11 /// </summary>  
 12 public static class OracleHelper
 13 {
 14     /// <summary>  
 15     /// 执行数据库非查询操作,返回受影响的行数  
 16     /// </summary>  
 17     /// <param name="connectionString">数据库连接字符串</param>
 18     /// <param name="cmdType">命令的类型</param>
 19     /// <param name="cmdText">Oracle存储过程名称或PL/SQL命令</param>  
 20     /// <param name="cmdParms">命令参数集合</param>  
 21     /// <returns>当前查询操作影响的数据行数</returns>  
 22     public static int ExecuteNonQuery(string connectionString, CommandType cmdType, string cmdText, params OracleParameter[] cmdParms)
 23     {
 24         OracleCommand cmd = new OracleCommand();
 25         using (OracleConnection conn = new OracleConnection(connectionString))
 26         {
 27             PrepareCommand(cmd, conn, null, cmdType, cmdText, cmdParms);
 28             int val = cmd.ExecuteNonQuery();
 29             cmd.Parameters.Clear();
 30             return val;
 31         }
 32     }
 33 
 34     /// <summary>  
 35     /// 执行数据库事务非查询操作,返回受影响的行数  
 36     /// </summary>  
 37     /// <param name="transaction">数据库事务对象</param>  
 38     /// <param name="cmdType">Command类型</param>  
 39     /// <param name="cmdText">Oracle存储过程名称或PL/SQL命令</param>  
 40     /// <param name="cmdParms">命令参数集合</param>  
 41     /// <returns>当前事务查询操作影响的数据行数</returns>  
 42     public static int ExecuteNonQuery(OracleTransaction trans, CommandType cmdType, string cmdText, params OracleParameter[] cmdParms)
 43     {
 44         OracleCommand cmd = new OracleCommand();
 45         PrepareCommand(cmd, trans.Connection, trans, cmdType, cmdText, cmdParms);
 46         int val = cmd.ExecuteNonQuery();
 47         cmd.Parameters.Clear();
 48         return val;
 49     }
 50 
 51     /// <summary>  
 52     /// 执行数据库非查询操作,返回受影响的行数  
 53     /// </summary>  
 54     /// <param name="connection">Oracle数据库连接对象</param>  
 55     /// <param name="cmdType">Command类型</param>  
 56     /// <param name="cmdText">Oracle存储过程名称或PL/SQL命令</param>  
 57     /// <param name="cmdParms">命令参数集合</param>  
 58     /// <returns>当前查询操作影响的数据行数</returns>  
 59     public static int ExecuteNonQuery(OracleConnection connection, CommandType cmdType, string cmdText, params OracleParameter[] cmdParms)
 60     {
 61         if (connection == null) 
 62             throw new ArgumentNullException("当前数据库连接不存在");
 63         OracleCommand cmd = new OracleCommand();
 64         PrepareCommand(cmd, connection, null, cmdType, cmdText, cmdParms);
 65         int val = cmd.ExecuteNonQuery();
 66         cmd.Parameters.Clear();
 67         return val;
 68     }
 69 
 70     /// <summary>  
 71     /// 执行数据库查询操作,返回OracleDataReader类型的内存结果集  
 72     /// </summary>  
 73     /// <param name="connectionString">数据库连接字符串</param>
 74     /// <param name="cmdType">命令的类型</param>
 75     /// <param name="cmdText">Oracle存储过程名称或PL/SQL命令</param>  
 76     /// <param name="cmdParms">命令参数集合</param>  
 77     /// <returns>当前查询操作返回的OracleDataReader类型的内存结果集</returns>  
 78     public static OracleDataReader ExecuteReader(string connectionString, CommandType cmdType, string cmdText, params OracleParameter[] cmdParms)
 79     {
 80         OracleCommand cmd = new OracleCommand();
 81         OracleConnection conn = new OracleConnection(connectionString);
 82         try
 83         {
 84             PrepareCommand(cmd, conn, null, cmdType, cmdText, cmdParms);
 85             OracleDataReader reader = cmd.ExecuteReader(CommandBehavior.CloseConnection);
 86             cmd.Parameters.Clear();
 87             return reader;
 88         }
 89         catch
 90         {
 91             cmd.Dispose();
 92             conn.Close();
 93             throw;
 94         }
 95     }
 96 
 97     /// <summary>  
 98     /// 执行数据库查询操作,返回DataSet类型的结果集  
 99     /// </summary>  
100     /// <param name="connectionString">数据库连接字符串</param>
101     /// <param name="cmdType">命令的类型</param>
102     /// <param name="cmdText">Oracle存储过程名称或PL/SQL命令</param>  
103     /// <param name="cmdParms">命令参数集合</param>  
104     /// <returns>当前查询操作返回的DataSet类型的结果集</returns>  
105     public static DataSet ExecuteDataSet(string connectionString, CommandType cmdType, string cmdText, params OracleParameter[] cmdParms)
106     {
107         OracleCommand cmd = new OracleCommand();
108         OracleConnection conn = new OracleConnection(connectionString);
109         DataSet ds = null;
110         try
111         {
112             PrepareCommand(cmd, conn, null, cmdType, cmdText, cmdParms);
113             OracleDataAdapter adapter = new OracleDataAdapter();
114             adapter.SelectCommand = cmd;
115             ds = new DataSet();
116             adapter.Fill(ds);
117             cmd.Parameters.Clear();
118         }
119         catch
120         {
121             throw;
122         }
123         finally
124         {
125             cmd.Dispose();
126             conn.Close();
127             conn.Dispose();
128         }
129 
130         return ds;
131     }
132 
133     /// <summary>  
134     /// 执行数据库查询操作,返回DataTable类型的结果集  
135     /// </summary>  
136     /// <param name="connectionString">数据库连接字符串</param>
137     /// <param name="cmdType">命令的类型</param>
138     /// <param name="cmdText">Oracle存储过程名称或PL/SQL命令</param>  
139     /// <param name="cmdParms">命令参数集合</param>  
140     /// <returns>当前查询操作返回的DataTable类型的结果集</returns>  
141     public static DataTable ExecuteDataTable(string connectionString, CommandType cmdType, string cmdText, params OracleParameter[] cmdParms)
142     {
143         OracleCommand cmd = new OracleCommand();
144         OracleConnection conn = new OracleConnection(connectionString);
145         DataTable dt = null;
146 
147         try
148         {
149             PrepareCommand(cmd, conn, null, cmdType, cmdText, cmdParms);
150             OracleDataAdapter adapter = new OracleDataAdapter();
151             adapter.SelectCommand = cmd;
152             dt = new DataTable();
153             adapter.Fill(dt);
154             cmd.Parameters.Clear();
155         }
156         catch
157         {
158             throw;
159         }
160         finally
161         {
162             cmd.Dispose();
163             conn.Close();
164             conn.Dispose();
165         }
166 
167         return dt;
168     }
169 
170     /// <summary>  
171     /// 执行数据库查询操作,返回结果集中位于第一行第一列的Object类型的值  
172     /// </summary>  
173     /// <param name="connectionString">数据库连接字符串</param>
174     /// <param name="cmdType">命令的类型</param>
175     /// <param name="cmdText">Oracle存储过程名称或PL/SQL命令</param>  
176     /// <param name="cmdParms">命令参数集合</param>  
177     /// <returns>当前查询操作返回的结果集中位于第一行第一列的Object类型的值</returns>  
178     public static object ExecuteScalar(string connectionString, CommandType cmdType, string cmdText, params OracleParameter[] cmdParms)
179     {
180         OracleCommand cmd = new OracleCommand();
181         OracleConnection conn = new OracleConnection(connectionString);
182         object result = null;
183         try
184         {
185             PrepareCommand(cmd, conn, null, cmdType, cmdText, cmdParms);
186             result = cmd.ExecuteScalar();
187             cmd.Parameters.Clear();
188         }
189         catch
190         {
191             throw;
192         }
193         finally
194         {
195             cmd.Dispose();
196             conn.Close();
197             conn.Dispose();
198         }
199 
200         return result;
201     }
202 
203     ///    <summary>  
204     ///    执行数据库事务查询操作,返回结果集中位于第一行第一列的Object类型的值  
205     ///    </summary>  
206     ///    <param name="trans">一个已存在的数据库事务对象</param>  
207     ///    <param name="commandType">命令类型</param>  
208     ///    <param name="commandText">Oracle存储过程名称或PL/SQL命令</param>  
209     ///    <param name="cmdParms">命令参数集合</param>  
210     ///    <returns>当前事务查询操作返回的结果集中位于第一行第一列的Object类型的值</returns>  
211     public static object ExecuteScalar(OracleTransaction trans, CommandType cmdType, string cmdText, params OracleParameter[] cmdParms)
212     {
213         if (trans == null) 
214             throw new ArgumentNullException("当前数据库事务不存在");
215         OracleConnection conn = trans.Connection;
216         if (conn == null) 
217             throw new ArgumentException("当前事务所在的数据库连接不存在");
218 
219         OracleCommand cmd = new OracleCommand();
220         object result = null;
221 
222         try
223         {
224             PrepareCommand(cmd, conn, trans, cmdType, cmdText, cmdParms);
225             result = cmd.ExecuteScalar();
226             cmd.Parameters.Clear();
227         }
228         catch
229         {
230             throw;
231         }
232         finally
233         {
234             trans.Dispose();
235             cmd.Dispose();
236             conn.Close();
237             conn.Dispose();
238         }
239 
240         return result;
241     }
242 
243     /// <summary>  
244     /// 执行数据库查询操作,返回结果集中位于第一行第一列的Object类型的值  
245     /// </summary>  
246     /// <param name="conn">数据库连接对象</param>  
247     /// <param name="cmdType">Command类型</param>  
248     /// <param name="cmdText">Oracle存储过程名称或PL/SQL命令</param>  
249     /// <param name="cmdParms">命令参数集合</param>  
250     /// <returns>当前查询操作返回的结果集中位于第一行第一列的Object类型的值</returns>  
251     public static object ExecuteScalar(OracleConnection conn, CommandType cmdType, string cmdText, params OracleParameter[] cmdParms)
252     {
253         if (conn == null) throw new ArgumentException("当前数据库连接不存在");
254         OracleCommand cmd = new OracleCommand();
255         object result = null;
256 
257         try
258         {
259             PrepareCommand(cmd, conn, null, cmdType, cmdText, cmdParms);
260             result = cmd.ExecuteScalar();
261             cmd.Parameters.Clear();
262         }
263         catch
264         {
265             throw;
266         }
267         finally
268         {
269             cmd.Dispose();
270             conn.Close();
271             conn.Dispose();
272         }
273 
274         return result;
275     }
276 
277     /// <summary>  
278     /// 执行数据库命令前的准备工作  
279     /// </summary>  
280     /// <param name="cmd">Command对象</param>  
281     /// <param name="conn">数据库连接对象</param>  
282     /// <param name="trans">事务对象</param>  
283     /// <param name="cmdType">Command类型</param>  
284     /// <param name="cmdText">Oracle存储过程名称或PL/SQL命令</param>  
285     /// <param name="cmdParms">命令参数集合</param>  
286     private static void PrepareCommand(OracleCommand cmd, OracleConnection conn, OracleTransaction trans, CommandType cmdType, string cmdText, OracleParameter[] cmdParms)
287     {
288         if (conn.State != ConnectionState.Open) 
289             conn.Open();
290 
291         cmd.Connection = conn;
292         cmd.CommandText = cmdText;
293        
294         if (trans != null)
295             cmd.Transaction = trans;
296 
297         cmd.CommandType = cmdType;
298 
299         if (cmdParms != null)
300         {
301             foreach (OracleParameter parm in cmdParms)
302                 cmd.Parameters.Add(parm);
303         }
304     }
305 
306     /// <summary>  
307     /// 将.NET日期时间类型转化为Oracle兼容的日期时间格式字符串  
308     /// </summary>  
309     /// <param name="date">.NET日期时间类型对象</param>  
310     /// <returns>Oracle兼容的日期时间格式字符串(如该字符串:TO_DATE('2007-12-1','YYYY-MM-DD'))</returns>  
311     public static string GetOracleDateFormat(DateTime date)
312     {
313         return "TO_DATE('" + date.ToString("yyyy-M-dd") + "','YYYY-MM-DD')";
314     }
315 
316     /// <summary>  
317     /// 将.NET日期时间类型转化为Oracle兼容的日期格式字符串  
318     /// </summary>  
319     /// <param name="date">.NET日期时间类型对象</param>  
320     /// <param name="format">Oracle日期时间类型格式化限定符</param>  
321     /// <returns>Oracle兼容的日期时间格式字符串(如该字符串:TO_DATE('2007-12-1','YYYY-MM-DD'))</returns>  
322     public static string GetOracleDateFormat(DateTime date, string format)
323     {
324         if (format == null || format.Trim() == "") format = "YYYY-MM-DD";
325         return "TO_DATE('" + date.ToString("yyyy-M-dd") + "','" + format + "')";
326     }
327 
328     /// <summary>  
329     /// 将指定的关键字处理为模糊查询时的合法参数值  
330     /// </summary>  
331     /// <param name="source">待处理的查询关键字</param>  
332     /// <returns>过滤后的查询关键字</returns>  
333     public static string HandleLikeKey(string source)
334     {
335         if (source == null || source.Trim() == "") return null;
336 
337         source = source.Replace("[", "[]]");
338         source = source.Replace("_", "[_]");
339         source = source.Replace("%", "[%]");
340 
341         return ("%" + source + "%");
342     }
343 
344 }

 

橙子主题打折出售

其实我不卖,主要是这里是放广告的,所以就放了一个
毕竟主题都没做完,卖了也是坑.

购买它
所有附件
该文章没有附件
本文为原创文章,请注意保留出处!

热门文章

SharePoint2010升级到SharePoint2013操作手册 SharePoint2010升级到SharePoint2013操作手册目录第一章...SharePoint2010升级到SharePoint2013操作手册 作者:Pastore Antonio
1700 浏览量
C# DataTable 某一列求和 列为数字类型doubletotal=Convert.ToDouble(datatable.Com...C#DataTable某一列求和 作者:Pastore Antonio
1673 浏览量
修复moss本机访问SharePoint 401.1 HTTP错误 环境:DCServer&...修复moss本机访问SharePoint401.1HTTP错误 作者:Pastore Antonio
1661 浏览量
从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn) 这一篇是从0开始搭建SQLServerAlwaysOn的第三篇,这一篇才真正开始搭建Alway...从0开始搭建SQLServerAlwaysOn第三篇(配置AlwaysOn) 作者:Pastore Antonio
1627 浏览量
SharePoint REST API – 概述 博客地址:http://blog.csdn.net/FoxDaveSharePointRES...SharePointRESTAPI–概述 作者:Pastore Antonio
1616 浏览量
Adding Docker Repository to CentOS 在CentOS系统上添加Docker官方仓库是安装和管理Docker的第一步。以下是详细...AddingDockerRepositorytoCentOS 2026-02-14 · Xzavier Aaron
Flowise 前端框架配置指南 用户需求问题:有没有适合配置Flowise的前端框架?目标:寻找类似OpenWebUI...Flowise前端框架配置指南 2026-02-14 · Xzavier Aaron
aspnet-wwwroot-error-solution ASP.NETCore启动报错:DirectoryNotFoundExceptionwwwroo...aspnet-wwwroot-error-solution 2025-12-28 · Pastore Antonio
SharePoint Server 出现 ERR_HTTP2_PROTOCOL_ERROR 如果SharePointServer在http的情况下能够访问,但是在https下不能访问报错如...SharePointServer出现ERR_HTTP2_PROTOCOL_ERROR 2025-10-21 · Pastore Antonio
.NET CORE 快速文本搜索器 简单的搜索引擎:usingSystem;usingSystem.Collections.Gen....NETCORE快速文本搜索器 2025-09-25 · Pastore Antonio
Sql Server 部署SSIS包完成远程数据传输 简介与背景在现代数据管理中,如何高效地完成远程数据的更新任务一直是一个重要的挑战。本文的背景起源于...SqlServer部署SSIS包完成远程数据传输 2026-02-14 · Xzavier Aaron
Coolify的使用 简介Coolify是一种功能强大的自托管综合解决方案,旨在简化应用、数据库以及开源服务的托管流程。...Coolify的使用 2026-02-14 · Xzavier Aaron
Coolify的使用 简介Coolify是一种功能强大的自我托管解决方案,专为那些希望掌控自己的应用、数据库以及开源服...Coolify的使用 2026-02-14 · Xzavier Aaron
SharePoint 2019 Web Application Creation 在SharePoint2019中创建WebApplication,可以使用PowerSh...SharePoint2019WebApplicationCreation 2026-02-14 · Xzavier Aaron
vscode使用sftp上传 简介在现代开发环境中,VSCode凭借其强大的扩展性和丰富的功能,成为许多开发者的首选代码编辑器。...vscode使用sftp上传 2026-02-14 · Xzavier Aaron
在现有Seafile 上追加 Azure Blob 磁盘 已有运行中的Seafile(Docker)现有数据保持不变新增几个AzureBlob作为...在现有Seafile上追加AzureBlob磁盘 2025-11-21 · Pastore Antonio
.NET CORE 传统方式调用SharePoint 直接贴代码:usingMicrosoft.SharePoint.Client;usingPnP....NETCORE传统方式调用SharePoint 2025-09-25 · Pastore Antonio
Azure 申请SharePoint 应用 登录后台如下:进入Azure:选择之后进入创建应用:进入之后输入名字按照如下图示点击注册:创...Azure申请SharePoint应用 2025-09-25 · Pastore Antonio
VS中MVC解决方案复制后修改调试端口 我之前是直接去解决方案属性中修改:然后恭喜你,你会喜提报错。正确方式,打开项目属性:这里重置切...VS中MVC解决方案复制后修改调试端口 2025-03-17 · Pastore Antonio
如何在C#WinForms应用程序中显示当前版本信息 在开发C#WinForms应用程序时,向用户展示当前版本信息是一个常见的需求。这不仅可以帮助用户了解...如何在C#WinForms应用程序中显示当前版本信息 2025-03-10 · Pastore Antonio
2022年4月30日 削苹果削了手,太懒不想收藏资料的时候复制粘贴所以开发了一个快速发布的组件。花了2天……浏览量:1...2022年4月30日 2022-04-30 · Pastore Antonio
2021年12月27日 头疼/胸闷/肋条疼/脚脖子疼……没钱……明天要给员工发工资了。浏览量:1,825 2021-12-27 · Pastore Antonio
2021年12月22日 今天天气:多云转晴早上太多雾,但怕迟到还是一路超速……赶到了目的地,在车库绕了四层没一个车位,绕晕...2021年12月22日 2021-12-22 · Pastore Antonio
aspnet-wwwroot-error-solution ASP.NETCore启动报错:DirectoryNotFoundExceptionwwwroo...aspnet-wwwroot-error-solution 2025-12-28 · Pastore Antonio
SharePoint Server 出现 ERR_HTTP2_PROTOCOL_ERROR 如果SharePointServer在http的情况下能够访问,但是在https下不能访问报错如...SharePointServer出现ERR_HTTP2_PROTOCOL_ERROR 2025-10-21 · Pastore Antonio
.NET CORE 快速文本搜索器 简单的搜索引擎:usingSystem;usingSystem.Collections.Gen....NETCORE快速文本搜索器 2025-09-25 · Pastore Antonio
.NET CORE 传统方式调用SharePoint 直接贴代码:usingMicrosoft.SharePoint.Client;usingPnP....NETCORE传统方式调用SharePoint 2025-09-25 · Pastore Antonio
Azure 申请SharePoint 应用 登录后台如下:进入Azure:选择之后进入创建应用:进入之后输入名字按照如下图示点击注册:创...Azure申请SharePoint应用 2025-09-25 · Pastore Antonio
.NET CORE 传统方式调用SharePoint 直接贴代码:usingMicrosoft.SharePoint.Client;usingPnP....NETCORE传统方式调用SharePoint 2025-09-25 · Pastore Antonio
Azure 申请SharePoint 应用 登录后台如下:进入Azure:选择之后进入创建应用:进入之后输入名字按照如下图示点击注册:创...Azure申请SharePoint应用 2025-09-25 · Pastore Antonio
.NET CORE 使用应用方案操作SharePoint Online 世纪互联版 我来为你创建一个.NETCore应用程序,用于向世纪互联SharePointOnline....NETCORE使用应用方案操作SharePointOnline世纪互联版 2025-09-25 · Pastore Antonio
Microsoft Excel 365 的 DCOMCNFG 中缺少 Microsoft Excel 应用程序 试试这个方法:这个方法不是解决你看不看得到,而是配置你看不到也能使用了。原操作方案:Micro...MicrosoftExcel365的DCOMCNFG中缺少MicrosoftExcel应用程序 2025-06-11 · Pastore Antonio
使用SPFX开发SharePoint SE\2019过程中的问题 遇到不能新建ListView控件的,不要怀疑重装就行。装好了去看:C:\Users\Adminis...使用SPFX开发SharePointSE\2019过程中的问题 2025-06-10 · Pastore Antonio
为你的wordpress主题添加支持文章格式 如果你的主题不支持文章格式,首先你需要在functions.php中添加如下类似代码让你的主题支持该...为你的wordpress主题添加支持文章格式 2024-04-17 · Pastore Antonio
wordpress新增文章类型 要在WordPress中添加自定义文章类型,您可以按照以下步骤进行:使用函数创建自定义文章类型:...wordpress新增文章类型 2024-04-17 · Pastore Antonio
去除WordPress登录页面的翻译组件 在主题function.php中添加如下内容:add_filter(‘login_d...去除WordPress登录页面的翻译组件 2023-08-30 · Pastore Antonio
Linux 下Wordpress博客搭建 WordPress#下载安装文件cd/usr/local/nginx/html/blogw...Linux下WordPress博客搭建 2021-12-11 · Pastore Antonio
从零开始在linux下搭建wordpress博客 一,准备linux环境本地虚拟机可以忽略第一部分微博以及微信的公共平台现在正火的一塌糊涂。既...从零开始在linux下搭建wordpress博客 2021-12-11 · Pastore Antonio
centos 常见问题 1:DNS配置域名无法在Linux下解析是一个比较普遍的问题,造成这个问题有很多原因,比如:服务器...centos常见问题 2023-11-08 · Pastore Antonio
linux中查找包含指定内容的文件 文件名+内容根据时间查找日志查询指定时间段内的日志查找关键字只显示包含内容的文件名文件名+...linux中查找包含指定内容的文件 2021-12-11 · Pastore Antonio
Linux 下Wordpress博客搭建 WordPress#下载安装文件cd/usr/local/nginx/html/blogw...Linux下WordPress博客搭建 2021-12-11 · Pastore Antonio
从零开始在linux下搭建wordpress博客 一,准备linux环境本地虚拟机可以忽略第一部分微博以及微信的公共平台现在正火的一塌糊涂。既...从零开始在linux下搭建wordpress博客 2021-12-11 · Pastore Antonio
linux 安装php8 准备工作  创建空文件夹>mkdir/opt/php//创建目录>cd/...linux安装php8 2021-12-11 · Pastore Antonio

最新发布

Sql Server 部署SSIS包完成远程数据传输 简介与背景在现代数据管理中,如何高效地完成远程数据的更新任务一直是一个重要的挑战。本文的背景起源于...SqlServer部署SSIS包完成远程数据传输 转载 2026-02-14
Coolify的使用 简介Coolify是一种功能强大的自托管综合解决方案,旨在简化应用、数据库以及开源服务的托管流程。...Coolify的使用 转载 2026-02-14
Coolify的使用 简介Coolify是一种功能强大的自我托管解决方案,专为那些希望掌控自己的应用、数据库以及开源服...Coolify的使用 转载 2026-02-14
SharePoint 2019 Web Application Creation 在SharePoint2019中创建WebApplication,可以使用PowerSh...SharePoint2019WebApplicationCreation 转载 2026-02-14
vscode使用sftp上传 简介在现代开发环境中,VSCode凭借其强大的扩展性和丰富的功能,成为许多开发者的首选代码编辑器。...vscode使用sftp上传 转载 2026-02-14
aspnet-wwwroot-error-solution ASP.NETCore启动报错:DirectoryNotFoundExceptionwwwroo...aspnet-wwwroot-error-solution #C# 2025-12-28
SharePoint Server 出现 ERR_HTTP2_PROTOCOL_ERROR 如果SharePointServer在http的情况下能够访问,但是在https下不能访问报错如...SharePointServer出现ERR_HTTP2_PROTOCOL_ERROR #C# 2025-10-21
.NET CORE 快速文本搜索器 简单的搜索引擎:usingSystem;usingSystem.Collections.Gen....NETCORE快速文本搜索器 #C# 2025-09-25
.NET CORE 传统方式调用SharePoint 直接贴代码:usingMicrosoft.SharePoint.Client;usingPnP....NETCORE传统方式调用SharePoint #C# 2025-09-25
Azure 申请SharePoint 应用 登录后台如下:进入Azure:选择之后进入创建应用:进入之后输入名字按照如下图示点击注册:创...Azure申请SharePoint应用 #C# 2025-09-25