首页 文章 精选 留言 我的

精选列表

搜索[WinForm],共296篇文章
优秀的个人博客,低调大师

C# WinForm开发系列 - ADO.NET

ADO.NET的名称起源于ADO(ActiveX Data Objects),这是一个广泛的类组,用于在以往的Microsoft技术中访问数据.之所以使用ADO.NET名称,是因为Microsoft,希望表明,这是在.NET编程环境中优先使用的数据访问接口. 它提供了平台互用性和可伸缩的数据访问。ADO.NET增强了对非连接编程模式的支持,并支持 RICH XML.由于传送的数据都是XML格式的,因此任何能够读取XML格式的应用程序都可以进行数据处理。事实上,接受数据的组件不一定要是ADO .NET组件,它可以是基于一个Microsoft Visual Studio的解决方案,也可以是任何运行在其它平台上的任何应用程序。 ADO.NET是一组用于和数据源进行交互的面向对象类库。通常情况下,数据源是数据库,但它同样也能够是文本文件、Excel表格或者XML文件。 ADO.NET允许和不同类型的数据源以及数据库进行交互。然而并没有与此相关的一系列类来完成这样的工作。因为不同的数据源采用不同的协议,所以对于不同的数据源必须采用相应的协议。一些老式的数据源使用ODBC协议,许多新的数据源使用 OleDb协议,并且现在还不断出现更多的数据源,这些数据源都可以通过.NET的ADO.NET类库来进行连接。 ADO.NET提供与数据源进行交互的相关的公共方法,但是对于不同的数据源采用一组不同的类库。这些类库称为Data Providers,并且通常是以与之交互的协议和数据源的类型来命名的。表1列处了一些常见的data providers,以及它们所使用的API前缀,和允许进行交互的数据源类型。 基本概念 ADO与ADO.NET ADO.NET 2.0中的DataSet和DataTable Data Access Application Block 概述 DataTable.Compute强大的功能 C#--详解DataTable的计算功能 ADO Net新特性 Transaction in ADO.net 2.0 关于ADO.Net连接池(Connection Pool)的一些个人见解 小议ADO.NET对象模型 ADO与ADO.NET比较 Ado.net 2.0学习 下一代ADO.NET介绍 ADO.NET Entity Framework简介 ADO.NET Data Services 1.5介绍 Ado.net Entity Framework系列 ADO.NET数据服务将提供离线功能 ADO.NET 实体框架概述 ADO.NET Data Service ADO.NET 的最佳实践技巧 趣味理解ADO.NET对象模型 再谈ADO .NET vs JDBC 高海东 - ADO.NET 2.0 ADO.NET 2.0 操作实例 ADO.NET 2.0 Dataset和Datatable 新功能新特性 ADO.NET 2.0 数据异步处理改善用户体验 ADO.NET 2.0 大批量数据操作和多个动态的结果集 imbob - ADO.NET ADO.Net 浅析(一) ADO.Net 浅析(二) ADO.Net 浅析(三) ADO.Net 浅析(四) ADO.Net 浅析(五)-ADO对象之---连接对象 ADO.Net 浅析(六)-使用参数和存储过程 烈火寒冰 - 读书笔记之《C#2005数据库编程 经典教程》 (一)ADO.NET概述及其重要的类 (二)C# 数据绑定 (三)数据库连接——以编程方式访问数据库 (四)数据库命令(SQL Server) ——以编程方式访问数据库 (五)数据阅读器对象——以编程方式访问数据库 (六)数据适配器对象——以编程方式访问数据库 (八)视图 (七)DataSet对象——以编程方式访问数据库 (九)存储过程 (十)事务和并发 (十一)SQL Server CLR 集成 实际应用 介绍 ADO.NET 中的数据并发[转] 如何在代码中通过命令行创建SQL SERVER 数据库 MySQL 和 .Net2.0配合使用 ADO.NET 如何读取 Excel (上) ADO.NET 如何读取 Excel (下) 使用OleDb,将Excel导入DataSet 怎么由DataSet将数据导入Excel? 读取Excel表格数据到DataGridView中 C#中怎么才能读取Access数据库中的所有表? 使用ADO.Net分块读写数据库BLOB数据 C#数据库操作的3种典型用法 使用 SqlBulkCopy 大量复制文字文件之 C# 程序代码 Asp.Net相关 使用PagedDataSource类实现DataList和Repeater控件的分页显示[转] web service 实现无刷新返回一个表 asp.net 数据库连接的方法 [翻译]使用asp.net 2.0中的SqlBulkCopy类批量复制数据 在asp.net 2.0中使用SqlBulkCopy类迁移数据 其它 李天平 我封装的ADO.NET对数据库操作经典类 数据库开发个人总结(ADO.NET小结)ADO.NET 的最佳实践技巧 掌握ADO.NET的十个热门技巧 SQL Server .NET Framework 数据提供程序连接池 两种实现事务方法的比较 请讨论一下高性能分页的必要性! 在.NET访问MySql数据库时的几点经验! 简单讲述基于SQL SERVER 分页的存储过程 【经验分享】海量数据高性能分页新法 存储过程编写经验和优化措施 (转) [原创]通用分页存储过程,源码共享,大家共同完善 一种理想的在关系数据库中存储树型结构数据的方法 [分享]千万数量级分页存储过程(带效果演示) 大家来分析几个分页存储过程,评出最好的,以方便我等菜鸟使用。 征求各位用的SqlHelper、AccessHelper、MySqlHelper、OracleHelper、XMLHelper、FileHelper。 本文转自peterzb博客园博客,原文链接:http://www.cnblogs.com/peterzb/archive/2009/07/12/1521880.html,如需转载请自行联系原作者

优秀的个人博客,低调大师

WinForm/MIS项目开发之中按钮级权限实践

一、前言 AgileEAS.NET SOA 中间件平台是一款基于基于敏捷并行开发思想和Microsoft .Net构件(组件)开发技术而构建的一个快速开发应用平台。用于帮助中小型软件企业建立一条适合市场快速变化的开发团队,以达到节省开发成本、缩短开发时间,快速适应市场变化的目的。 AgileEAS.NET SOA中间件平台提供了敏捷快速开发软件工程的最佳实践,通过提供大量的基础支撑功能如IOC、ORM、SOA、分布式体系及敏捷并发开发方法所支撑的插件开发体系,以及提供了大量的实体、数据模型设计生成工具、代码生成工具,用于帮助中小软件开发商快速成长。 AgileEAS.NET平台充分把握目前软件行业快速发展的新趋势,基于敏捷并行开发、快速适应市场这样淳朴的软件工程实践,采用业界广泛使用的Microsoft .Net构件(组件)开发技术实践了这种开发思想,帮助软件企业实现“敏捷变化、快速适合”的目标,从而帮助软件企业在激烈的市场竞争中赢得先机并获得更高的回报。 二、关于按钮级权限 在AgileEAS.NET SOA5.0版本之中,AgileEAS.NET SOA平台仅提供了基于模块的权限管理体系,也没有提供按钮/子功能级别的权限控制体系。 有很多很多的使用者基于AgileEAS.NET SOA 中间件平台进行应用开发的过程之中都提到这个问题,我们也给大家提供了一些解决思路和方案,但是一直没有在平台之中集成和实现一套标准的按钮/子功能权限管理功能和标准的API。 在AgileEAS.NET SOA5.0版本发布之前我们实现一套按钮/子功能级别的权限控制体系,提供了一个用于实现按钮级权限管理功能的管理模块及一给API接口。 三、按钮级权限管理 在AgileEAS.NET SOA5.0版本之中,AgileEAS.NET SOA平台仅提供了基于模块的权限管理体系,也没有提供按钮/子功能级别的权限控制体系。 使用管理员登录AgileEAS.NET SOA平台WinClient容器,就会在系统管理导航组之中看到有一个“函数管理”模块: 列表之中是所有的按钮权限项目,存储在模块信息表之中,如果需要增加一个新的“按钮/函数/权限项目”,使用添加功能,打开添加界面: 以上界面的操作会增加一个名称为“药品字典打印”字的按钮级别的权限,其权限ID为“6a185217-34de-4fe7-9ed5-c2cc49ba432c”。 双击选中的按钮级别的权限项,会打开“函数属性”对话框可以针对此函数/权限项进行授权: 授权方式同模块级权限一模一样,你也可以通过账号管理和角色管理模块进行授权。 四、API及如何使用 光提供一个管理功能还是不够的,还必须要提供一组API以供开发人员使用,AgileEAS.NET SOA中间件平台在应用程序对象(EAS.Application类的单例对象EAS.Application.Instance)上定义一个验证权限的API: 1: // 2: // 摘要: 3: // 验证权限,验证当前系统登录人员是否具有某个构件的访问权限。 4: // 5: // 参数: 6: // component: 7: // 构件Guid。 8: // 9: // 返回结果: 10: // 验证通过返回True,否则返回False。 11: bool Demand(Guid component); Demand方法需要传入按钮级别权限项/函数的定义ID,其他由交由平台完成。 接下来我们在DrugShop案例案例之中的药品字典模块之中增加对“打印”按钮的权限控制,Visual Studio打开DrugShop解决方案打开“药品字典”模块插件的代码文件DrugDictList.cs,修改打印按钮的事件如下: 1: private void tsbPrint_Click(object sender, EventArgs e) 2: { 3: //验证按钮级别权限。 4: if (!EAS.Application.Instance.Demand(new Guid("6a185217-34de-4fe7-9ed5-c2cc49ba432c"))) 5: return; 6: 7: if (this.dictList != null) 8: { 9: EAS.GReport.Controls.PrintViewDialog ViewDialog = new EAS.GReport.Controls.PrintViewDialog(); 10: ViewDialog.ReportID = new Guid("F29C4C91-0791-4116-BE26-3A2A88F30A2A"); 11: ViewDialog.DataObject = this.dictList; 12: ViewDialog.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; 13: ViewDialog.WindowState = System.Windows.Forms.FormWindowState.Maximized; 14: ViewDialog.ShowDialog(); 15: } 16: } 这样就完成了对本权限项的调用验证。 四、执行验证 我们编译并且启动DrugShop.Main.exe,使用0001密码sa登录,打开“药品字典”模块,查询数据之后点击“打印”按钮: 0001不具有这个按钮级权限项的权限,所以会提供没有权限,我们换0002登录并且执行同样的操作: OK,可以正常使用了,按钮级权限演示完成。 DrugShop案例之中同步提供了本例子的权限定义和调用代码,请大家通过AgileEAS.NET SOA中间件官方网站的最新下载栏目进行下载。 五、联系我们 为完善、改进和推广AgileEAS.NET而成立了敏捷软件工程实验室,是一家研究、推广和发展新技术,并致力于提供具有自主知识产权的业务基础平台软件,以及基于业务基础平台开发的管理软件的专业软件提供商。主要业务是为客户提供软件企业研发管理解决方案、企业管理软件开发,以及相关的技术支持,管理及技术咨询与培训业务。 AgileEAS.NET SOA中间件平台自2004年秋呱呱落地一来,我就一直在逐步完善和改进,也被应用于保险、医疗、电子商务、房地产、铁路、教育等多个应用,但一直都是以我个人在推广,2010年因为我辞职休息,我就想到把AgileEAS.NET推向市场,让更多的人使用。 我的技术团队成员都是合作多年的老朋友,因为这个平台是免费的,所以也没有什么收入,都是由程序员的那种理想与信念坚持,在此我感谢一起奋斗的朋友。 团队网站:http://www.agilelab.cn, AgileEAS.NET网站:http://www.smarteas.net 官方博客:http://eastjade.cnblogs.com QQ:47920381,AgileEAS.NET QQ群:113723486(AgileEAS SOA 平台)/上限1000人 199463175(AgileEAS SOA 交流)/上限1000人 212867943(AgileEAS.NET研究)/上限500人 147168308(AgileEAS.NET应用)/上限500人 172060626(深度AgileEAS.NET平台)/上限500人 116773358(AgileEAS.NET 平台)/上限500人 125643764(AgileEAS.NET探讨)/上限500人 193486983(AgileEAS.NET 平台)/上限500人 邮件:james@agilelab.cn,mail.james@qq.com, 电话:18629261335。 作者:魏琼东出处:http://www.cnblogs.com/eastjade关于作者:有13年的软件从业经历,专注于中小软件企业软件开发过程研究,通过在技术与管理帮助中小软件企业实现技术层面开源节流的目的。熟悉需求分析、企业架构、项目管理。现主要从事基于AgileEAS.NET平台的技术咨询工作,主要服务于医疗卫生、铁路、电信、物流、物联网、制造、零售等行业。如有问题或建议,请多多赐教!本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,如有问题,可以通过mail.james@qq.com联系我,也可以加入QQ群:113723486、199463175、116773358、116773358、212867943、147168308、59827496、193486983、15118502和大家共同讨论,非常感谢。 本文转自魏琼东博客园博客,原文链接:http://www.cnblogs.com/eastjade/p/3481192.html,如需转载请自行联系原作者

优秀的个人博客,低调大师

C/S系统快速开发框架(C#+Winform+SQL)

C/S系统快速开发框架 适用开发: 制造、服务、零售、商贸等行业的ERP、MRP、MES、CRM、MIS、HIS、POS数据管理应用系统 运行平台:Windows + .NET Framework 4.5 开发工具:Visual Studio 2015+,C#语言 数据库:Microsoft SQLServer 2008R2+(支持多数据库:Oracle/MySql) http://www.csframework.com/cs-framework-5.0.htm 产品介绍 C/S系统开发框架旗舰版为软件团队提供强大的技术支撑以及快速开发能力,开发框架集成大量的通用开发包与工具实用类,提供丰富的例子,借助技术文档、网站资源、演示源码以及在线技术指导,用户能快速投入研发自己的项目。自2007年首发开发框架以来,我们成功积累了2000多位用户,其中包括数百家软件公司或大型集团企业。经过十年的产品迭代升级,最新旗舰版技术更成熟,性能更稳定,产出效率更高! 配套的代码生成器工具能自动生成界面(FORM)、业务层(BLL)、数据层(DAL)、模型(Model)、报表(Report)以及业务模块(Class Library DLL)的源代码,极大地提高开发效率、节约开发时间、降低项目成本。据多年项目实践统计,开发框架基本能完成项目大概60%以上的工作量。 开发框架经过严格的技术验证和系统测试,如压力测试,得到广大用户的赞誉和好评。我们积极收集用户反馈的意见,不断完善和改进,最新版本极少有系统性缺陷。我们秉着分享成功经验,坚持创新原则,永久提供优质的售后服务与技术保障。每次发布新版本,一定会给用户带来惊喜,每次免费升级,一定能让用户感到贴心和温暖。我们秉着创新、专注、专业,始终如一的精神理念,乐于分享成功和喜悦,欢迎选购我们的产品。 最后更新:2017-11-06 17:03 架构图 (Architecture) 团队开发 (Team Development) CSFrameworkV5.0客户端程序分为CSFramework.ClientFoundation和CSFramework.ClientDemo两个解决方案,将基础架构独立封装,编译成DLL文件给开发者使用,为您的项目源码和软件知识产权提供深度保障。 若源码保密级别不高的情况下,建议直接在基础架构解决方案内开发新功能,ClientDemo仅仅是开发示例。 多数据库支持 (Multi-Database Supportable) 开发框架为用户提供多种数据库支持,目前已封装三种底层数据驱动,支持SqlServer、Oracle、MySql三种常用数据库。Multi-DB架构采用策略模式设计,定义IDatabase通用接口,并实现DatabaseMSSQL, DatabaseMySql,DatabaseOracle三个数据库操作类。引用的类库名称:CSframework.DB.dll。 多帐套支持 (Multi-Dataset Supportable) 帐套通常应用在大型集团企业的管理系统,一般一个企业只用一个帐套,若企业旗下有独立核算的实体子公司,就可以建几个帐套。账套之间是相对独立的,也就是说:建立、删除或修改一个账套中的数据,不会对其他帐套有任何影响。开发框架引入多帐套设计理念,使数据独立存储,灵活配置和扩展,便于管理和维护。 C/S系统开发框架数据库(CSFramework Default Datasets) 系统数据库将承载更多的通用以及公共数据,比如软件系统配置信息、用户权限信息,集团报表数据、各种财务报表、公司营运动态数据、内部通知以及OA在线办公等。大型软件系统通常采用这种多帐套机制,在服务端所谓的后台架构设计,系统数据库通常被开发人员作为各个数据库之间的通信桥梁,比如跨库存储过程、LinkServer等。 数据访问层 (Data Access Layer) 数据访问层采用继承方式设计,开发框架提供的dalBase基类定义受保护的_Database成员变量,实例化数据访问层同时实例化数据库对象,为DAL层访问和操作数据库提供底层接口。 数据访问层流程 (DAL Flow) 触发UI层按钮事件获取客户资料,首先调用业务逻辑层的Get方法,再传递到数据访问层,在DAL层编写好SQL脚本,并调用_Database对象的方法返回数据。 Loginer对象记录用户登录信息、帐套编号、Token或其他信息,作为全局变量的形式贯穿整个系统(包括前段和后端),是非常重要的数据之一。 帐套编号(DBID)是Database ID的缩写,用户登录成功时记录帐套编号,实例化数据访问层同时根据DBID实例化对应的数据库。 提交数据流程 (Post Data Flow) 提交数据流程涵盖DAL层、SQL命令生成器、ORM Model、DatabaseProvider以及Database四个层面的功能协同,不需要手工编写任何SQL脚本,全部实现自动化提交,是开发框架核心技术之一。 开发框架提供两种ORM模型: 1.表结构静态类模型 (Table Model) 静态类定义表结构的字段映射,这个类无方法或属性,仅转换了表结构字段名作为静态变量名。 2.实体类模型(Entity Class/Object Class) 实体类包含字段名称常量与属性。参考:开发框架支持的两种ORM模型(静态类/实体类) SQL命令生成器跟据ORM模型自动生成Insert/Update/Delete三种SQL命令的脚本,开发人员需要在DAL层的CreateSqlGenerator方法内指定命令生成器类型。 IDatabase提供操作数据库的底层接口,用于执行SQL脚本获取或提交数据,如:建立SQL连接、获取数据表、执行SQL命令等功能。 跨平台服务端 (Cross Platform Server) CSFramework.WebApi Server是旗舰版支持的后端服务器开发框架,WebApi服务借助Web平台开发的应用程序编程接口,具有良好的接口封装以及跨平台客户端存取数据等优点,统一使用JSON数据格式,在智能手机APP软件产品领域占用巨大市场。 WCF架构通信流程图 (WCF Communication Flow) 代码混淆与部署 (Code Confusion And Deployment) 如上图所示,核心主程序或类库文件必须进行代码混淆(加壳)之后才能正式发布软件。 代码混淆参考内容: http://www.csframework.com/archive/1/arc-1-20170228-2288.htm http://www.csframework.com/archive/1/arc-1-20170228-2290.htm 对程序文件进行代码混淆之后,可使用ClickOnce或其他三方安装程序打包成安装程序发布給用户。 解决方案和工程项目 (Solution & Project) 开发框架基础架构(CSFramework.ClientFoundation) 开发框架客户端示例(CSFramework.ClientDemo) 开发框架服务端解决方案(CSFramework.Server) 开发框架目录结构(CSFramework Sub Directories) 代码生成器 (Code Generator) http://www.csframework.com/cs-code-generator.htm 生成代码流程 (Generate Code Flow)

优秀的个人博客,低调大师

C# WinForm 按钮下拉列(SplitButton)简单使用示例

关于SplitButton网上有很多的示例教程,这里我就以 https://wyday.com/splitbutton/ 为例给大家简单的讲解下。 1.下载控件 前往 https://wyday.com/splitbutton/ 下载控件 2.引入控件 在VS工具箱栏右键,选择 选择项(I) 点击 浏览(B).. 按钮 选择下载的控件解压文件夹中的 SplitButton.dll 3.简单使用 添加控件到窗体 添加 ContextMenuStrip 控件 在 SplitButton 控件属性中绑定 ContextMenuStrip 控件 完成

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

用户登录
用户注册