C#实现客户端数据导入导出源代码及说明文档
网站开发中经常遇到大量数据导入数据库,或者数据库导出到文档中。本文结合项目实际,总结出比较实用的Excel文件导入到数据库和数据库导出到Excel表格中,供大家学习参考。
一、 数据库表与Excel表结构
1、 Excel表结构
2、 数据库Fms_Employee表结构
注意:要导入的Excel表列必须与数据库Fms_Employee表的属性列一一对应。
3、 前台设计
<asp:Button ID="InfoImport" Text="导入" runat="server"
二、 Excel表数据导入到MS SQL数据库
protected void InfoImport_Click(object sender, EventArgs e)
{
try
{
string fileName = FileUpload1.FileName;
string savePath = Server.MapPath(("~\\upfiles\\")+fileName);
FileUpload1.SaveAs(savePath);
string strCon = "Provider=Microsoft.Jet.Oledb.4.0;"+"Data Source="+savePath+";Extended Properties='Excel 8.0;HDR=yes;IMEX=1'";
OleDbConnection odc=new OleDbConnection(strCon);
odc.Open();
string strCmd=string.Format("select * from [{0}$]","sheet1");
OleDbDataAdapter oda=new OleDbDataAdapter(strCmd,odc);
DataSet ds=new DataSet();
oda.Fill(ds,"sheet1");
foreach(DataRow dr in ds.Tables[0].Rows)
{
InsertToSql(dr);
}
Response.Write("[removed]alert('导入成功!');[removed]");
}
catch
{
Response.Write("[removed]alert('导入的Excel文件格式不正确!');[removed]");
}
}
private void InsertToSql(DataRow dr)
{
SqlConnection con = new SqlConnection(ConfigurationManager.AppSettings["ConnectionDataBase"]);
string employeeID = dr[0].ToString();
string domainName = dr[1].ToString();
string name = dr[2].ToString();
string roleID = dr[3].ToString();
string departID = dr[4].ToString();
string department = dr[5].ToString();
con.Open();
string sql = "insert into Fms_Employee Values('" + employeeID + "','" + domainName + "','" + name + "','" + roleID + "','
在WPF中创建可换肤的用户界面
为了实现软件”换肤”,你必须明白WPF的资源系统是如何运作的.在WPF中有很多类型都拥有一个ResourceDictionary类型的公开属性Resources,该字典包含了一个”键-值”对列表,其中”键”可以是任意类型的对象,其”值”就是一个资源(“值”也可以是任意类型的对象).大多数时候我们放入资源字典中的”键”都是string类型的对象,而有时也可能是其他类型.所有的资源都被存放到这样的资源字典中,而资源查找程序正是使用它们来查找所需的资源.
在应用程序中,资源是按照一种层次关系被组织在一起的.当定位资源(比如画刷,样式,数据模板或气体任意类型的对象)时,软件就会执行一个导航于这个层次组织间的查找程序来查找与指定”键”相对应的资源.
它(资源查找程序)会首先检查需求该资源的元素自己所拥有的那些资源,如果没有找到,则它会检查该元素的”父元素”,看该”父元素”是否拥有所需的资源.如果”父元素”也没有所需的资源,则它会继续沿着”元素树”向上检查该元素的每一个”祖先”.如果仍然没有找到,则它最终会向Application对象询问该资源,在本文中我们可以忽略在那之后还会发生什么.
每个”皮肤”的资源都被放到独立的ResourceDictionary中,它们都属于自己的XAML文件.在运行时我们可以加载一个包含的所有”皮肤”所需资源的ResourceDictionary(此后我们称之为”皮肤字典”),并将它插入到MergedDictionaries 中(其为Application对象的ResourceDictionary),通过将皮肤字典插入到应用程序资源中,应用程序的所有的元素都可以使用该皮肤字典中所包含的资源了.
界面上所有支持”换肤”的元素都应该通过动态资源引用来引用皮肤资源,这就使得我们可以在运行时进行”换肤”以及让这些元素拥有新的皮肤资源.
最简单的完成这项任务的方式是让元素的Style属性被指定为动态资源引用.通过使用元素的Style属性,我们可以让皮肤字典包含那些可以设置任意个属性的Style,这就比从皮肤字典中为每一个单独的属性设置动态资源引用更容易编写和维护代码.
PHP、JAVA 、C、C# 和 LINUX课件下载
包括五门课件,四门语言学习资料PHP、JAVA 、C、C# 可供大家学习参考, LINUX课件理论和实验结合,提高动手能力
《新日语基础教程 2 教师用书》[日]财团法人海外技术者研修协会编著PDF格式
《新日语基础教程 2 教师用书》[日]财团法人海外技术者研修协会编著 外语教学与研究出版社 1998年9月 191页.pdf
windows icon图标
该解压包里面包含常见的windows icon图标,为制作GUI的树形菜单的图标、常见菜单提供便利
数据恢复软件(RecoverMyFiles)
RecoverMyFiles
一款优秀的数据恢复软件,由GetData公司出版。Recover即“恢复”,My即“我的”,Files即“文件”。
该软件有3各功能:
快速搜索:速度很快,但恢复率率较低,只能对浅层数据进行恢复。
完全搜索:效率较高,对数据的扫描更彻底,但需要花大量时间。
格式化恢复:可以恢复因格式化而丢失的文件。甚至将分区删除后重新建立,也能恢复删除之前分区内的文件(可不是信口胡说,经本人尝试过的)。
个人简介:此款软件比较低级,不算很强悍,建议使用Easy Recovery,比这个要专业一点,效果也好一点。
《软件测试经验与教训》(中文PDF)下载
《软件测试经验与教训》本书汇总了293条来自软件测试界尖专家的经验与建议,阐述了如何做好测试工作、如何管理测试,以及如何澄清有关软件测试的常见误解,读者可直接将这些建议用于自己的测试项目工作中。这些经验中的第一条都是与软件测试有关的一个观点,观点后面是针对运用该测试经验的方法、时机和原因的解释或例子。 为了满足不同层次的软件测试员、开发人员和管理人员的需要,该书还提供以下内容:
◆ 根据世界级软件测试专家多年的测试经验总结出的有用实践和问题评估方法。
◆ 在所有关键问题上积累的经验,包括测试设计、测试自动化、测试管理、测试策略和错误报告。
◆ 如何将本书提供的经验有选择性地运用到实际项目环境中的建议。
本书还提供了有关如何将本书提供的经验有选择性地运用到读者实际项目环境中的建议,在所有关键问题上所积累的经验,以及基于多年的测试经验总结出的有用实践和问题评估方法。
【作者】[美]凯纳等 著,韩柯等 译
目录如下
译者序
序
前言
致谢
第1章 测试员的角色
经验1:测试员是项目的前灯
经验2:测试员的使命决定要做的一切
经验3:测试员为很多客户服务
经验4:测试员发现的信息会“打扰”客户
经验5:迅速找出重要程序问题
经验6:跟着程序员走
经验7:询问一切,但不一定外露
经验8:测试员关注失效,客户才能关注成功
经验9:不会发现所有程序问题
经验lo:当心“完备的”测试
经验11:通过测试不能保证质量
经验12:永远别做看门人
经验13:当心测试中的不关我事理论
经验14:当心成为过程改进小组
经验15:别指望任何人会理解测试或理解测试员需要什么条件才能搞好测试
第2章 按测试员的方式思考
经验16:测试运用的是认识论
经验17:研究认识论有助于更好测试
经验18:认知心理学是测试的基础
经验19:测试在测试员的头脑中
经验20:测试需要推断,并不只是做输出与预期结果的比较
经验2l:优秀测试员会进行技术性、创造性、批判性和实用性地思考
经验22:黑盒测试并不是基于无知的测试
经验23:测试员不只是游客
经验24:所有测试都试图回答某些问题
经验25:所有测试都基于模型
经验26:直觉是不错的开始,但又是糟糕的结束
经验27:为了测试,必须探索
经验28:探索要求大量思索
经验29:使用诱导推断逻辑发现推测
经验30:使用猜想与反驳逻辑评估产品
经验31:需求是重要人物所关心的质量或条件
经验32:通过会议、推导和参照发现需求
经验33:既要使用显式规格说明,也要使用隐式规格说明
经验34:“它没有问题”真正的含义是,它看起来在一定程度上满足部分需求
经验35:最后,测试员所能得到的只是对产品的印象
经验36:不要将试验与测试混淆起来
经验37:当测试复杂产品时:陷入与退出
经验38:运用试探法快速产生测试思路
经验39:测试员不能避免偏向,但是可以管理偏向
经验40:如果自己知道自己不聪明,就更难被愚弄
经验41:如果遗漏一个问题,检查这种遗漏是意外还是策略的必然结果
经验42:困惑是一种测试:工具
经验43:清新的眼光会发现失效
经验44:测试员要避免遵循过程,除非过程先跟随自己
经验45:在创建测试过程时,避免“1287”
经验46:测试过程的一个重要成果,是更好、更聪明的测试员
经验47:除非重新发明测试,否则不能精通测试
第3章 测试手段
第4章 程序错误分析
第5章 测试自动化
第6章 测试文档
第7章 与程序员交互
第8章 管理测试项目
第9章 测试小组的管理
第10章 软件测试职业发展
第11章 计划测试策略
附录:软件测试的语境驱动方法
java笔试试题(附答案)
java面试试题大全
收藏了近年来java基本面试试题,最常面试问到的问题,每个问题都附有答案,供大家参考
TIF类型的文件转换成PDF格式的软件
可以将TIF格式的文件快速转换成PDF格式的文件,快速好用