C# 自己写的Winform程序批量导入Excel文件到Oracle数据库的过程中,程序运行会很慢!而且Winform窗体会卡

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# 自己写的Winform程序批量导入Excel文件到Oracle数据库的过程中,程序运行会很慢!而且Winform窗体会卡相关的知识,希望对你有一定的参考价值。

C# 自己写的Winform程序批量导入Excel文件到Oracle数据库的过程中,程序运行会很慢!而且Winform窗体会卡住,直到导入成功为止,我知道这应该是在主线程执行的结果,怎么让程序在子线程执行,不让窗体卡住!

参考技术A 使用BackGroundWorker类来实现你的需求
这个类有两个事件
DoWork//异步处理
RunWorkerCompleted //处理完成以后,会回调这个函数
使用线程,不能帮你提高速度,只能实现程序的异步处理,让程序可以响应用户的GUI操作
参考技术B 这个你就可以用线程调用了。
方法引用是:System.Threading。
至于线程直接调用方法就可以了。如果不明白的百度学习下线程的使用方法。
希望楼主早日解决问题,如果有什么不明白的可以HI百度我~~~来自:求助得到的回答本回答被提问者和网友采纳
参考技术B PageOffice能解决这个问题 参考技术C 比如你原来是这么导入:
ImportExcel();
修改为:
new Thread(ImportExcel).Start();

c#如何在winform中打开一个excel文档呢

下载一个DsoFramer.ocx,然后用regsvr32 path\DsoFramer.ocx注册一下,path指dsoframer.ocx的路径。
在vs.net 工具栏中添加这个com组件。将控件拖到窗体上,用组件的CreateNew方法可能从模板或通过"Excel.Sheet"创建Excel工作表了。
你还可通过组件的getApplication方法得到服务器,对工作表进行任意操作。
参考技术A var xlsApp = new Excel.Application();
var wb = xlsApp.Workbooks.Open(Filename: "待打开的 xls 文件名");
xlsApp.Visible = true;本回答被提问者采纳

以上是关于C# 自己写的Winform程序批量导入Excel文件到Oracle数据库的过程中,程序运行会很慢!而且Winform窗体会卡的主要内容,如果未能解决你的问题,请参考以下文章

C# winform dataGridView批量数据修改

c# WINFORM 导入EXCEL数据覆盖问题

C# winform中以excel的方式编辑表格

C# winform 中如何导入Excel

C# winform 中如何导入Excel

Winform excel导入问题