3.5)、EF For Mysql如何处理并发脏数据(防止多人同时修改同一条单据数据)
在Windows中使用C#连接Mysql数据库比较简单,可以直接使用MySql.Data库,目前最新版本为:8.3.0。 当然也可以结合MySql.Data和Dapper库一起使用,目前Dapper的最新版本为:2.1.35。 Dapper是一款轻量级ORM工具,是一个简单的.NET对象映射器,在速度上几乎与使用原始ADO.NET数据读取器的速度一样快。ORM是一个对象关系映射器,它负责数据库和编程语言之间的映射。Dapper通过扩展IDbConnection提供一些有用的扩展方法去查询数据库,提供了一种简单、高效的方式来执行数据库查询、插入、更新和删除操作。
如果知道.NET项目在开源中国的git上所占的比重只有5%的话,为什么这个《2014年国人开发的最热门的开源软件TOP 100》榜中.NET项目那么少就是情理之中了。 进入看了一下,发现还是有很多
首先创建数据库丨 学号 姓名 班级 QQ 微信 丨5列 三层架构,即包含 BLL,DAL,Model,DBHelper,Winform 必须 Mysql 包 using MySql.Data.MySq
WPF(Windows Presentation Foundation)是微软推出的基于Windows 的用户界面框架,属于.NET Framework 3.0的一部分。它提供了统一的编程模型、语言和框架,真正做到了分离界面设计人员与开发人员的工作;同时它提供了全新的多媒体交互用户图形界面
回顾与说明 前面我们把“商品字典”、“商品入库”、“商品库存查询”、“商品入库查询”四个模块已经概括或者详细的演示了一个管理信息系统的典型应用场景,按照原来的打算,WinForm篇的例子系统中的几个模块就告一段落了。 由于好多朋友都问我,你的例子中大量使用ListView控件,很想知道是否可以支持DataGridView控件,所以我就有想到重新用DataGridView写一下“商品字典”模块。 本文内容 关于“商品字典”的实现及其业务应用场景请参见一步一步教你使用AgileEAS.N
本站(https://dotnet9.com)曾介绍过一款Winform开源控件库《HZHControls》,文章发布后不少朋友热情的咨询相关控件库信息,由此看来Winform在大家心中的地位还是挺高的。今天小编再分享一款新鲜出炉的 Winform 控件库库——SunnyUI,一起跟 Dotnet9 往下看吧。
三年之前投稿的azure云服务使用经验,记录一下,如今的微软和Azure已不是过去的微软和Azure了
最近终于把小特WinForm框架升级完了,这次升级改动的地方不少,包括开发工具升级至VS2019,DevExpress版本升级至V20.1等等。下面详细说明
今天研究了一下vs 2008 package的部署,即怎样放置package中的dll、ProjectTemplate和ItemTemplate,趁着热乎劲先记录下来,免得以后忘记。
最近在做Windows桌面程序开发,最初考虑到团队的技术构成(没有.NET开发),决定用Electron作为解决方案来开发,但是最后因为需要实现应用向其它未处于激活状态的应用发消息的功能无法通过自带的api实现(需要借助node-ffi调用dll解决),所以就对各个方案做对比做最后的决策(其实还是在纠结用C#.net还是Electron,其它的方案并不考虑)。
ClickOnce智能客户端,是微软提供比较早的一项技术,用于实现WinForm开发的应用程序能够自动更新,省去给每台客户端升级带来的困扰。 从网上的贴子里看,有的说好用,有的说不好用。客观的说,微软的东西其实都很好用的,不好用的原因是我们不会用。微软技术是上手容易,精通难,需要不断的摸索和研究,才能灵活运用。当然,我不是微软的水军,但我是用Net开发。。。好了,废话不多说,下面介绍下这个技术。 在网上找了下相关资料,发现这两篇介绍的很全面。不懂的童鞋可以详细阅读,我也不用粘贴复制,这样太没技术
上一篇AgileEAS.NET之插件接口IModule中我们介绍了EAS.NET模块插件契约,在本文我们将介绍一下调用插件的运行容器,即平台。 废话不说了,下面我贴出传统WinFo
CefSharp简单来说就是一款.Net编写的浏览器包,方便你在Winform和WPF中内嵌的Chrome浏览器组件。
开启线程执行导出的时候使用的是Task.Run(() =>{});若将框架版本改为4.0则需要将此处修改为new Thread(() =>{}).Start();
阅读目录 日志系统应具备的特性 Log4Net 配置文件:log4net.config 初始化 输出信息 对Log4Net的封装 log4net.config复杂配置 不管是Web应用程序还是WinForm应用程序,Visual Studio所带的调试功能都是足够强大,足以应付开发中的各种调试需求。但是,对于已经发布的应用,要记录错误、记载运行中的各种状态信息,就需要依靠日志系统了。 日志系统应具备的特性 一个好的日志系统,应该具备以下的特性: 1、运行稳定。因为日志的作用就是要在系统出现各种
第一步先来建一个最简单的Windows窗体应用程序,并为项目命名为WinFormTest,解决方案为WinFormSetup
FreeSql 经过半年的开发和坚持维护,在 0.6.x 版本中完成了几大重要事件:
前言 官网:https://www.aardio.com/ 使用IE内核加载网页 import web.form; /*DSG{{*/ var winform = win.form(text="WebBrowser";right=1365;bottom=767) winform.add() /*}}*/ var wb = web.form( winform ) web.form.gpuRendering(true,11001); wb.go("https://www.psvmc.cn/zjtools/
最近做程序,需要在一个listview里面嵌入一个按钮,但是请嵌入的按钮无法做出响应。到论坛求助后才得到前辈指点:"这种嵌入控件的控件,最好用wndproc回调函数处理消息。 否则应在父控件窗口中转发命令消息。" 第一种方法:用wndproc回调函数处理消息 import win.ui; /*DSG{{*/ var winform = ..win.form( bottom=356;parent=...;text="AAuto Form";right=351 ) winform.add( listv
类似开发WinForm的方式,使用C#开发Android和IOS的移动应用?听起来感觉不可思议,但是实际上确实很强大。
最近开发了一个WinForm软件,为了更加高大尚尝试做了个打包安装的包装。因为以前直接编译,然后交给用户使用,基本也是平平安安的;但后来这样体现不了成熟软件的高大尚,那好吧就弄个一键安装部署的。本来在第一次选型选了NSIS (Nullsoft Scriptable Install System) ,功能比较强大,但发现这个太基于代码了,要学习的成本比较高,所以还是寻觅其他的。后来发现还是Setup Factory,这个中规中矩吧。没有太多花俏的功能,就简单的Next,Next,Finish.但如果这么简单也不会有这篇文章了。
一、课程介绍 我们都知道在软件架构方式分为:C/S和B/S两类。这里阿笨不谈论两种软件架构的优劣之分,因为它们各有千秋,用于不同场合。一位伟大的讲师曾经说过一句话:事物存在即合理!录制这堂课程的目的就是专门给想学习和了解WinForm应用程序的童鞋们。虽然当前主流的架构开发的确大多是WEB端和App移动端开发,可能大家都忽略了传统的WinForm桌面应用程序开发的魅力! 如果您对本次分享《 WinForm企业级框架实战项目演练 》课程感兴趣的话,那么请跟着阿笨一起玩WinForm吧!阿笨将从
aardio中richedit控件默认只能简单设置所有文字的颜色,有时候为了逼格高一点,或者人性化一点,需要用多种颜色显示文字,经过反复研究测试,得出了下面的代码:
配置 import config; //导入用户库 if(config.zconfig.ieversion == null){ web.form.gpuRendering(true,11000); config.zconfig.ieversion = 11000; }else{ web.form.gpuRendering(true,config.zconfig.ieversion); } 语法 config.文件名.配置项名 打印调试 var isDebug = false; if(isDebug
image.png listview颜色控制效果 import win.ui; /*DSG{{*/ var winform = win.form(text="listview color";right=627;bottom=294;border="dialog frame") winform.add( button={cls="button";text="增加项目:指定整行同一颜色";left=393;top=39;right=591;bottom=83;z=2}; button2={cls="butt
可以通过将msvsmon.exe复制到远程计算机,也可以通过安装远程工具来运行远程调试器(安装远程工具完成以后就和复制粘贴文件打开msvsmon.exe是一样的,多一个配置页面,这里主要演示复制粘贴):
传统桌面客户端的远程调试相比UWP,ASP等项目来说,配置比较麻烦,因为它是非部署的应用程序,原理是复制编译的文件到远程计算机,通过网络来连接和VS的通信,本文主要讲述WPF,WinForm应用程序的远程调试。
前阵子在用python写一些小程序,写完后就开始思考怎么给python程序配一个图形界面,毕竟控制台实在太丑陋了。
这是一个开源的表格控制组件,支持Winform、WPF和Android平台,可以方便的加载、修改和导出Excel文件,支持数据格式、大纲、公式计算、图表、脚本执行等、还支持触摸滑动,可以方便地操作表格。
说明:<wfi:WindowsFormsHost></wfi:WindowsFormsHost>即为WinForm控件的宿主容器,每一个宿主容器只能放一个WinForm控件,如下例,放了三个WinForm控件,分别放在三个宿主容器里面,该容器可以设置属性来调整大小和布局
WinForm封装了win32的api,多次进行P/invoke操作(大部分使用p/invoke操作封装),速度慢。
用winform应用程序登录网站的解决方案 背景: 网站使用Membership机制来验证用户 要求: c/s应用程序要用网站上的用户名和密码登录,同时在c/s端登录后,浏览网站时就无需再重复登录 思路: 1。.net网站对用户是否登录的判断依据是:检查浏览器客户端是否存在有效的cookie验证票据,如果在c/s winform中登录的同时,能让用户浏览器生成验证票据,则实现在winform中登录后,浏览网站时无需再重复登录的问题得已解决 具体操作:可在网站上建一个专用页面,功能为验证用户信息
1.概述 1.1应用场景 微信的出现,改变了我们日常生活。而微信公众平台的出现,使我们每个人都可能成为一个品牌,微商的普及、微店越来越多。越来越多的人,借助微信公众平台,实现了自己的梦想 在此背景环境下,开发出基于微信公众平台的一套框架,方便开发员二次开发,也可以直接使用。 1.2面向对象 Net程序开发员 1.3开发环境 开发环境 描述 VS2012或以上 整个框架只有此一个解决方案.Net类库版本是4.0 EntityFramework 版本6.0
AutoProject Studio 自动化项目生成器是一款基于C#.Net Framework 4.0为平台自主研发、专为软件 设计、开发、管理的自动化项目(代码)生成器,同时也是一个智能化软件开发平台与超高效率、超低成本的最优解决方案。
工作中写WinForm程序经常会引用第三方的组件,包括引用Com组件,做了一个桌面程序需要展示PDF,看了些其它的开源组件对PDF的兼容性都不是很好,有些看着PDF是正常的但是复制出来的字有很多乱码。然后就直接引用了adboe pdf reader来显示,测试了不同pdf兼容性算是不错的。那如何引用呢?
HTMLayout的功能特别强大,它相当于使用了HTML和CSS,但是干掉了JS(JS使用aardio语法实现),
今天大姚给大家分享2款开源、美观的WinForm UI控件库,希望可以帮助到有需要的同学。
string ConnectionString = “Data Source=数据库名;User Id=用户名;Password=密码;Integrated Security=no;”;
在应用程序的集成过程中,有时候需要WinForm应用程序和Javascript程序进行交互。比如说:应用程序是一个综合调度系统,在整个综合调度系统中,要实现定位,显示地图。综合调度平台的大部分功能都是使用WinForm实现的;但是定位和地图部分都不是自己开发的需要使用第三方接口,实现地图的展示,而第三方的接口使用的是Javascript实现的。这种情况有一下两种方法解决:
web.blink(miniblink)使用新版chromium内核,并且精简了体积,兼容WKE( WebKit )组件的接口。 aardio中提供了基于WKE( WebKit )的web.kit 扩展库,也提供了基于miniblink的web.blink扩展库。 这两个扩展库基本的用法是一样的( 因为接口基本一样 )。
前言 官方文档 https://bbs.aardio.com/forum.php?mod=viewthread&tid=13625 虽然 aardio 的多线程开发非常简单,但是: 1、请先了解:「多
一、课程介绍 关于如何实现“WinForm多语言版本”网上有很多实现技术方案,可以说是“琳琅满目”,"包罗万象"。俗话说的好:一千个读者就有一千个哈姆雷特!如果您工作中恰好也遇到这种开发需求,但是为了一个自上手简单、维护方便、扩展性强的WinForm多语言版本技术方案而感到烦恼的话,那么很高兴恭喜你看到了阿笨的本次分享课程;阿笨结合的是自己在实际工作中遇到真实项目案例,特别的总结并且分享出来给大家,从而避免重复造轮子这种事情。 如果您对本次分享《WinForm多语言版本实战项目演练》课程感兴趣的话,那么
在Windows系统,最常见的就是Windows Forms程序(以下简称WinForm程序),也就是窗体应用程序,比如MS Office,媒体播放器软件等,WinForm程序比起Web应用程序,明显在实时性,用户亲和度和操作便捷能力方面强很多。在Linux系统下,虽然也有桌面窗体应用程序,但应用很少。 能否将WinForm程序移植到Linux系统上面呢? 目前,Novell公司的开源项目mono提供了将.NET程序运行在各种非Windows平台的能力,例如控制台程序,WinForm程序和ASP.NET等,
新生命团队基础框架X组件,包括网络、数据库、安全、多线程、反射、序列化、模版引擎、服务代理、远程过程调用等模块,包括Mvc后台魔方、超级码神工具、消息队列等子系统,支持Mono/Android/iOS/NetStandard。
WPF开发于WinForm之后,从技术发展的角度,WPF比WinForm先进是不容置疑的。我觉得WPF相比于WinForm有下面的一些较好的特性: 解决Window Handle问题 在Windows GDI或WinForm开发中复杂的GUI应用程序,会使用的大量的控件,如Grid等。而每个控件或Grid cell都是一个小窗口,会使用一个Window handle,尽管控件厂商提供了很多优化办法,但还是会碰到Out of Memory或”Error Create Window handle”,而导致程序退出。 WPF彻底改变了控件显示的模式,控件不在使用窗口,也就不会占用Window handle。理论上,如果一个WPF只有一个主窗口的话,WPF只会使用一个Window handle(如果忽略用于Dispatcher的隐藏窗口的话)。所以WPF GUI程序不会出现Window handle不够用的情况。 多线程的处理 在WinForm程序开发时,最头疼的一个问题就是,worker线程修改控件的属性而导致程序崩溃,而且这种非法操作并不是每次都失败。WinForm控件提供了InvokeRequired属性来判断当前线程是不是控件创建线程。问题是当控件树很深是,这个属性会比较慢。 WPF开始设计的时候,就考虑到了多线程的问题。大部分的WPF类都继承于DispatcherObject。DispatcherObject实际就是对Dispatcher的一个简单封装。Dispatcher提供了类似InvokeRequired的方法(CheckAccess)。这个方法只是比较线程的ID,所以会很快。另外,Dispatcher提供了优先队列,异步调用,Timer等功能,简化了开发多线程GUI程序。 控件的Composition 在WinForm如果要实现一个有Checkbox的下拉菜单,将不得不处理复杂的Window消息。而通过WPF控件的Content Model和Layout系统,WPF控件可以包括任何类型的控件,甚至.Net CLR对象。很多现代的控件厂商也提供了Composition的控件,实现方法和WPF的Content模型也比较相似。WPF开发团队应该借鉴了Infragistics的很多想法。有了这个基础,开发新的WPF控件更加简单了。 XAML 个人觉得XAML应该是WPF中比较划时代的东东。通过XAML,我们可以用文本的方式描述复杂的Object Graph。这个想法在VB中就有了,不过XAML更简化,以便于使用工具来生成XAML。通过Command,Routing Event等机制,界面设计人员和程序员有比较清楚的界限。 Dependency Property 在WinForm开发中,经常碰到的问题就是一个控件的值变了,其他控件也会跟着改变。解决办法,要不是通过写代码,要不是通过数据绑定,前者是界面和代码没法分开,后者还不够灵活。而WPF在这方面通过XAML可以简单的把相关的属性联系起来,通过Extension可以实现复杂的绑定关系。 总的来说,我觉得WPF应该是GUI发展的一个延续,原来GUI中复杂的东西,现在通过简单的文本就可以实现。
大家好,我是架构君,一个会写代码吟诗的架构师。今天说一说WPF ClickOnce应用程序IIS部署发布攻略「建议收藏」,希望能够帮助大家进步!!!
前段时间由于项目上的需求,要在.Net平台下实现把HTML内容生成图片或PDF文件的功能,特意在网上研究了几种方案,这里记录一下以备日后再次使用。当时想着找一种开发部署都比较清爽并且运行稳定的方案,但实际上两者同时满足基本不可能,只能做一个自己觉得合适的取舍,下面从两个维度(清爽指数和功能指数)逐一对比。
import sys from PyQt5.QtWidgets import QApplication, QWidget, QHBoxLayout, QPushButton
import sys from PyQt5.QtWidgets import QApplication, QWidget, QGridLayout, QPushButton
领取专属 10元无门槛券
手把手带您无忧上云