
dotNet
文章平均质量分 90
星空你好
知行合一
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
构建煤矿物联网大数据平台思路(1)
最近要构建一个综合自动化分析平台,需求是实现煤矿十几个子自动化系统的数据收集、分析、报表、统计功能。现在的趋势是构建物联网大数据平台。但是现有系统是基于传统的EF5+PSpace实时数据库。先从实时数据库开始下手分析。拿到 sdk 是.net、java、c三种。最后一种不会。分析前两种。pSpacepSpace 是一个高性能、高吞吐能力、可靠性强、跨平台的实时/历史数据库系统,可以用于采集、压缩、存储、加工、分析任何带有时间特性的生产信息,产品提供全系列的工业通讯接口及ERP 业务接口,实现生产监控原创 2022-04-02 08:58:35 · 584 阅读 · 0 评论 -
C# sqlserver 数据库备份与还原(winform版)
数据库备份与还原的sql语句//数据库备份backup database northwind to disk='c:\dbbackup\northwind.bak';//数据库还原//数据库还原use master;alter database northwind set offline with rollback immediate restore database northwi...原创 2020-03-10 22:49:46 · 2221 阅读 · 1 评论 -
单元测试-xUnit总结
xUnit总结什么是xUnitxUnit.net是针对.NET Framework的免费,开源,以社区为中心的单元测试工具。自动化测试的优点可以频繁的进行测试可以在任何时间进行测试,也可以按计划定时进行,例如:可以在半夜进行自动化测试比人工测试速度快可以更快速地发现错误基本上是非常可靠的测试代码与生产代码紧密结合使得开发团队更具有幸福感自动化测试的分类单元测试可以测试...原创 2020-02-26 22:49:53 · 2220 阅读 · 0 评论 -
依赖注入(转载)
依赖注入那些事儿转载:依赖注入那些事儿1 IGame游戏公司的故事1.1 讨论会话说有一个叫IGame的游戏公司,正在开发一款ARPG游戏(动作&角色扮演类游戏,如魔兽世界、梦幻西游这一类的游戏)。一般这类游戏都有一个基本的功能,就是打怪(玩家攻击怪物,借此获得经验、虚拟货币和虚拟装备),并且根据玩家角色所装备的武器不同,攻击效果也不同。这天,IGame公司的开发小组正在开会对...转载 2020-02-25 18:12:06 · 430 阅读 · 0 评论 -
ASP.NET Core如何在.NET Core中构建和运行时禁用浏览器启动
在开发ASP.NET Core的Web API项目时,,我们使用fiddler测试web api,如何禁用浏览器启动:在vs设置启动选项为项目,而不是浏览器在项目的Properties,打开launchSettings.json,设置launchBrowser为false...原创 2020-02-22 23:15:59 · 2806 阅读 · 0 评论 -
Cefsharp崩溃,异常代码 e0434352 KERNELBASE.dll错误的解决方法
Cefsharp崩溃,异常代码 e0434352解决方案解决方案:安装Visual C++ Redistributable Packages for Visual Studio 2013下载地址:Visual C++ Redistributable Packages for Visual Studio 2013参考:https://github.com/cefsharp/CefShar...原创 2020-02-04 11:42:45 · 13997 阅读 · 0 评论 -
ABP模块系统学习及使用
ABP模块系统简介参考:ABP中配置的注册和初始化ABP模块系统ABP 源码解析 一. ABP启动ABP框架提供了创建和组装模块的基础,一个模块能够依赖于另一个模块。在通常情况下,一个程序集就可以看成是一个模块。在ABP框架中,一个模块通过一个类来定义,而这个类要继承自AbpModule。模块生命周期事件在一个应用中,abp框架调用了Module模块的一些指定的方法来进行启动和关...原创 2020-02-03 02:29:07 · 1735 阅读 · 0 评论 -
ASP.NET Core WebAPI学习-6
Web API 增删改方法PUT vs PATCHPUT:整体更新/替换资源所有的字段都被重写了,或者是设置为该字段的默认值PATCH: 局部更新使用JsonPatchDocument发送变更的数据,对资源指定的字段进行更新[HttpPut("{employeeId}")]public async Task<IActionResult> UpdateEmployeeFo...原创 2020-02-01 14:38:17 · 1490 阅读 · 0 评论 -
ASP.NET Core WebAPI学习-5
输入验证说到验证,那就需要做三件事:定义验证规则按验证规则进行检查报告验证的错误。在把错误报告给API消费者的时候,报告里并不包含到底是服务端还是API消费者引起的错误,这是状态码的工作。而通常响应的Body里面会包含一组验证错误信息,API消费者可以把这些信息展示给API消费者的用户。定义验证规则想要定义验证规则,我们可以使用ASP.NET Core内置的方式或者使用第三方库。...原创 2020-02-01 14:34:20 · 1945 阅读 · 0 评论 -
ASP.NET Core WebAPI学习-4
查询和搜索数据绑定数据可以通过多种方式来传给API。Binding Source Attributes 会告诉 Model 的绑定引擎从哪里找到绑定源。共有以下六种 Binding Source Attributes:[FromBody] 请求的 Body[FromForm] 请求的 Body 中的 form数据[FromHeader] 请求的 Header[FromQue...原创 2020-02-01 14:27:53 · 2026 阅读 · 0 评论 -
ASP.NET Core WebAPI学习-3
内容协商(Content Negotiation) AutoMapper的使用内容协商是这样一个过程:针对一个响应,当有多种表述格式可用的时候,选取最佳的一个表述。数据格式是json,xml等格式Media Type(媒体类型):- applicaion/json- application/xml输出格式在Startup.cs中定义,当请求的格式与输出的格式不匹配的时候,会返回406 N...原创 2020-02-01 14:23:13 · 891 阅读 · 0 评论 -
ASP.NET Core WebAPI学习-2
使用ControllerApiController特性的作用:ApiController是应用在Controller类,会启用以下行为:要求使用特性路由(Attribute Routing)自动HTTP 400响应推断参数的绑定源Mulitpart/form-data请求推断错误状态代码的问题详细信息CompanyController继承自ControllerBase使用...原创 2020-02-01 14:22:32 · 1584 阅读 · 0 评论 -
ASP.NET Core WebAPI学习-1
Web API学习创建Web API项目打开Visual Studio,首先要选择ASP.NET Core 3.1。这里选择了API这个模板 ,取消使用HTTPS和Docker。查看json配置文件appsettings.jsonappsettings.Development.json注意:您需要知道appsettings.json 和 appsettings.Developmen...原创 2020-02-01 00:04:20 · 2244 阅读 · 0 评论 -
ADO.NET三种模式-连接模式
本文总结了ADO.NET的三种工作模式,数据库连接配置,数据提供程序及数据提供程序工厂,详细讲解了连接模式下的数据查询,增删改,使用存储过程,事务和批量插入数据的方法。原创 2020-01-26 13:41:12 · 1116 阅读 · 0 评论 -
在winform中使用cefsharp.winform嵌入浏览器(含视频教程)
免费视频教程和源码:https://www.bilibili.com/video/av84573813/1. 开始使用CefSharp在Winform中嵌入网页2. 解决重复打开Cefsharp出现崩溃的问题3. 使用本地网页,cefsharp调用javascript代码实现打开CefSharp的调试工具打开本地命令行窗口获取电脑信息关闭窗体4. 把网站打包成window...原创 2020-01-23 13:01:59 · 1248 阅读 · 4 评论 -
一行代码去掉Devexpress弹窗
使用的是.net hook方法:使用代码:using System;using System.Windows.Forms;namespace AlexDevexpressToolTest{ static class Program { /// <summary> /// The main entry point for the...原创 2020-01-22 18:17:02 · 1203 阅读 · 0 评论 -
c# winform show和showdialog的区别
winform中show和showdialog的区别在C#中窗口的显示有两种方式:模态显示(showdialog)和非模态显示(show)模态与非模态窗体的主要区别是窗体显示的时候是否可以操作其他窗体。模态窗体不允许操作其他窗体,非模态窗体可以操作其他窗体。模态对话框(ShowDialog)模态显示后,弹出窗口阻止调用窗口的所有消息响应。只有在弹出窗口结束后调用窗口才能继续。在模态窗口“...转载 2020-01-22 09:23:07 · 4292 阅读 · 0 评论 -
C#判断是否是以管理员权限允许当前应用
private static bool CheckForAdminRights() { string path = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Windows), string.Format("tfadxp{0}.txt", "80")); try { if (Fil...原创 2020-01-20 18:31:16 · 484 阅读 · 1 评论 -
使用cefsharp在winform中嵌套浏览器,解决程序闪退问题,你也可以做一个红芯浏览器^v^
使用cefsharp在winform中嵌套浏览器简单使用cefsharp在winform中嵌套浏览器在上一节,我们学习了如何简单地在winform中嵌入chromium浏览器,我在使用这个开发项目时,需要点击一个按钮,弹出嵌入浏览器的窗体,出现一个问题,就是第一次点击按钮可以正常打开浏览器,第二次点击就会出现卡壳,山体问题。由于对于chromium这个庞大的程序不太了解,上网搜索相关文章解...原创 2020-01-20 10:58:58 · 2007 阅读 · 0 评论 -
C# Hook 学习使用强大的工具DetnetDetour,处理强签名问题,实现不修改代码破解软件
以前学过Hook不过没有实战,忘得一干二净。今天需要使用一款软件,有反调试,有请签名,但是没有加壳,所以反编译调试很快破解。由于有强签名,所以需要找去除强签名工具,不想以后还这样,所以希望从不修改代码的角度破解试试:找到了一款强大的Hook工具库:https://github.com/bigbaldy1128/DotNetDetour几行代码实现了不修改代码完美破解软件,下面贴上官网给的例...原创 2020-01-20 01:29:41 · 2144 阅读 · 0 评论 -
学习C# 哈希表(HashTable)用法
学习C# 哈希表(HashTable)用法1. 哈希表(HashTable)简述在.NET Framework中,Hashtable是System.Collections命名空间提供的一个容器,用于处理和表现类似keyvalue的键值对,其中key通常可用来快速查找,同时key是区分大小写;value用于存储对应于key的值。Hashtable中keyvalue键值对均为object类型,所以...原创 2020-01-16 00:38:39 · 1093 阅读 · 0 评论 -
C# winform 一次只能允许一个应用(使用mutex)
在很多应用程序开发过程中,需要只允许一个程序实例,即使是通过虚拟桌面方式连接过来的,也是只允许一个人运行。下面是实现该功能的代码,注意mutexName 为系统名称,Global为全局,表示即使通过通过虚拟桌面连接过来,也只是允许运行一次。using System;using System.Threading;using System.Windows.Forms;namespace Wi...原创 2020-01-15 20:55:58 · 1112 阅读 · 0 评论 -
winform捕获全局异常
在winform中捕获全局异常,其中Application.ThreadException捕获UI线程异常,AppDomain.CurrentDomain.UnhandledException捕获应用程序域内的未处理异常(非UI线程异常),注意如果有一个以上的类似Application.Run(new Form1()) 还是会出现未捕获的异常。using System;using System...原创 2020-01-15 20:41:14 · 467 阅读 · 0 评论 -
观察者模式实践-实现winform 窗体之间传值(事件实现)
事件本身就是观察者模式的一个实现。先总结一下事件的使用:委托类型声明定义发布者类,并声明事件在发布者类中定义触发事件方法定义订阅者类,并注册事件在订阅者类中定义事件处理方法针对事件,.Net Framework提供了一个标准模式,主要在winform中比较常见,区别就是不用自定义委托,使用EventHander委托,因此其步骤是:定义发布者类,并声明事件在发布者类中定义触发...原创 2020-01-14 01:12:54 · 395 阅读 · 0 评论 -
在wpf中利用异步lambda编程,模拟数据库连接,防止界面假死
参考《图解C#》第20章异步编程第五节程序,解决在wpf中连接数据库,界面假死问题。public partial class MainWindow : Window { private bool isConnected = false; public MainWindow() { InitializeComponent(); ...原创 2020-01-14 00:53:25 · 330 阅读 · 0 评论 -
观察者模式实践-实现winform 窗体之间传值
观察者模式的应用:Winform窗体传值观察者模式的概念:定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并更新。今天我们就学着用一下这个观察者模式,先想象下这个场景:当一个窗体(主窗体)内的值发生变化时,另外几个窗体内的值也会发生相应的变化。这个最简单的实现方式是,在子窗体类内创建一个公共方法,在主窗体内创建子窗体的实例。当值发生变化时调用子窗体的...原创 2020-01-12 19:25:08 · 659 阅读 · 0 评论 -
Ado.net批量插入数据
采用的是SqlBulkCopy方法:数据库是sql server。示例代码地址:https://gitee.com/Alexander360/LearnAdoNetSqlBulkCopy批量插入的方法如下,包括list转datatable方法:using System;using System.Collections.Generic;using System.Data;using...原创 2020-01-12 15:24:54 · 1348 阅读 · 0 评论 -
Ado.net总结-Connection(武器库地址)
ConnectionConnection概述SqlConnection 类中提供的常用属性和方法如下表所示:属性或方法说明SqlConnection()无参构造方法SqlConnection(string connectionstring)带参数的构造方法,数据库连接字符串作为参数Connectionstring属性,获取或设置数据库的连接串S...原创 2020-01-12 13:08:16 · 331 阅读 · 0 评论 -
Ado.net总结-Command(指挥官)
Command概述在 System.Data.SqlClient 命名空间下,对应的 Command 类为 SqlCommand,在创建 SqlCommand 实例前必须已经创建了与数据库的连接。SqlCommand 类中常用的构造方法如下表所示:构造方法说明SqlCommand()无参构造方法SqlCommand(string commandText,Sq...原创 2020-01-12 12:46:03 · 664 阅读 · 0 评论 -
visual studio 2019 sql server localdb 数据库中文乱码解决方法
今天使用localdb学习asp.net core时,发现写入localdb数据库的中文为乱码,按照网上的方法解决,却无法显示,这里只有用sql语句更改了。参考这个,但我试了不成功,用sql语句更改可以https://www.cnblogs.com/tianfengcc/p/7616725.html执行下面sql语句,Name会正常显示中文CREATE TABLE [dbo].[Stu...原创 2020-01-12 11:50:41 · 3898 阅读 · 1 评论 -
Ado.Net总结
ADO.NET总结ADO.NET 是在 .NET 平台上访问数据库的组件,它是以 ODBC (Open Database Connectivity) 技术的方式来访问数据库的一种技术。ADO.NET常用命名空间:命名空间数据提供程序System.Data.SqlClientMicrosoft SQL ServerSystem.Data.OdbcODBCSy...原创 2020-01-12 10:49:53 · 1646 阅读 · 0 评论 -
提升DataGridView加载速度的三个属性设置
最近使用DataGridView,加载了1000多条数据,还卡。于是搜索,拼凑出三个属性设置,设置了这三个属性,别说,效果还不错,数据秒加载!!!下一步用空使用多线程试试!dataGridView1.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.DisableResizing;dataGridVi...原创 2020-01-07 21:59:24 · 2779 阅读 · 0 评论 -
winform程序:newtonsoft json 序列化时出现 “unterminated string. Excepted delimiter..."
在写一个winform程序时出现上述错误,开始以为newtonsoft 第三方插件对读取的字符串的长度有限制,也搜索没有用。后来通过读取文件,发现可以序列化,排除newtonsoft插件的问题。后来确定是winform的textbox控件的字符限制问题。 textbox默认最大字符串长度为32767,改为一个比较大的数,2147483647.问题解决!!!...原创 2020-01-02 13:45:47 · 6241 阅读 · 0 评论 -
entityframewor core 不让属性生成数据库的列
在对应的属性上使用NotMapped特性原创 2019-12-26 08:55:37 · 230 阅读 · 0 评论 -
在winform中屏蔽双击最大化或最小化窗体(C#实现),禁用任务管理器结束程序
在需要屏蔽双击窗体最大化、最小化、关闭、拖拽窗体中写入以下代码,可以根据需要取舍代码:protected override void WndProc(ref Message m) { if (m.Msg == 0x112) { switch ((int)m.WParam) ...原创 2019-12-23 09:20:01 · 2453 阅读 · 0 评论 -
使用cefsharp在winform中嵌套浏览器
1. 创建winform程序2. 在项目中,右击引用,选择nuget包,引入cefsharp.winforms包3. 更改winform生成配置,之前的cefsharp.winforms不支持anyCPU配置,现在支持了 右击项目,选择属性,选择生成,更改生成配置勾上“32位优先”4. 更改项目的csproj文件,添加<CefSharpAnyCpuSupport...原创 2019-12-21 17:25:57 · 1397 阅读 · 0 评论 -
asp.net core session无法获取问题解决方案
在使用asp.net core 的session存取验证码时,发现后面获取不到,参考别的把services.Configure<CookiePolicyOptions>注释掉就可以了,cnm microsoft。microsoft经常变,无语!!!https://blog.youkuaiyun.com/yenange/article/details/80954802using Syste...原创 2019-12-21 16:43:48 · 2239 阅读 · 0 评论 -
sql server 中SqlDbType与DbType之间的对应关系
SqlDbType => DbTypeSqlDbType.BigInt DbType.Int64SqlDbType.Binary DbType.BinarySqlDbType.Bit DbType.BooleanSqlDbType.Char DbType.AnsiStringFixedLengthSqlDbType.DateTime DbTyp...原创 2019-12-20 20:36:21 · 1637 阅读 · 0 评论 -
ASP.NET CORE MVC验证码
1. 引入System.Drawing.Common nuget包;2. 生成验证码的代码:using System;using Microsoft.AspNetCore.Mvc;using System.Drawing;using System.Drawing.Imaging;using System.IO;namespace LearnIdentity.Control...原创 2019-12-07 08:54:44 · 816 阅读 · 0 评论 -
entity framework core + SQLite Error 1: 'no such table: Blogs'.
在学习Entity Framework Core使用SQLite时,出现上述错误,原因是找不到db文件.在UseSqlite("")中添加具体的db文件路径:改成如下即可:protected override void OnConfiguring(DbContextOptionsBuilder options) => options.UseSqlite(@"...原创 2019-12-03 14:31:17 · 2414 阅读 · 0 评论