天枫信息技术,专注于.NET技术的开发与应用

All Posts


《ABP Framework 极速开发》教程首发

写在发布之前 有没有小伙伴跟我刚开始接触 ABP Framewk 的感觉一样“一看文档深似海”,看完文档之后,想要上手却找不着头绪。 本套教程写作的目的之一是为初学者提供一条相对简洁的快速上手路径,避免陷入到框架细节中,节省入门时间、降低上手难度,快速应用、整合、运行、发布整个解决方案,先从整体开发上对框架有一个把握。 官方文档提供的是“标准化”内容,在实际使用过程中,难免会遇到一些“意想不到的情况“,启动模板不支持源码调试,官方教程也并没有提供基于生产环境发布、部署的详细文档。本教程是基于实战过程的步骤 ...

ABP Framework 极速 开发 教程 首发

WPF开发随笔收录-WriteableBitmap绘制高性能曲线图

一、前言 之前分享过一期关于DrawingVisual来绘制高性能曲线的博客,今天再分享一篇通过另一种方式来绘制高性能曲线的方法,也就是通过WriteableBitmap的方式;具体的一些细节这里就不啰嗦了,同样是局部绘制的思想,滚动条拖动到哪里,就只绘制那一部分的曲线,直接贴代码;(该程序在英特尔11代CPU的电脑可能会遇到拖动滚动条曲线图卡住不动的情况,这个是显卡驱动的问题,官方已经修复了,遇到这问题的记得更新一下驱动) 二、正文 1、新建一个类,继承FramewkElement,然后在里面实现一下绘 ...

WPF 开发 随笔 收录 WriteableBitmap 绘制 高性能 曲线图

SkiaSharp 之 WPF 自绘 投篮小游戏(案例版)

此案例主要是针对光线投影法碰撞检测功能的示例,顺便做成了一个小游戏,很简单,但是,效果却很不错。投篮小游戏 规则,点击投篮目标点,就会有一个球沿着相关抛物线,然后,判断是否进入篮子里,其实就是一个矩形,直接是按照碰撞检测来的,碰到就算进去了,对其增加了一个分数统计等功能。 Wpf 和 SkiaSharp 新建一个 WPF 项目,然后,Nuget 包即可 要添加 Nuget 包 InstallPackage SkiaSharp.Views.WPF Version 2.88.0其中核心逻辑是这部分,会以我设置 ...

SkiaSharp WPF 自绘 投篮 小游戏 案例

dotnet OpenXML 解析 PPT 图表 面积图入门

本文告诉大家如何使用 OpenXML 解析 PPT 的图表,以面积图为入门例子告诉大家 OpenXML 的存储在 PPT 里面,有强大的图表功能,可以联动 Excel 展示数据。在 PPT 里面的图表和 Excel 的图表稍微有一些差别,本文只聊 PPT 的图表 如下图是本文将作为例子的图表对应的数据如图如上图可以看到在 PPT 里面的图表是可以使用 Excel 的数据,将 Excel 文件内嵌到 PPT 里面。但这不代表要解析图表的数据就一定需要先了解 Excel 的内容,本文将绕过对 Excel 的任 ...

dotnet OpenXML 解析 PPT 图表 面积 入门

C#线程的使用需要注意的事项

1、await和.result .getwaiter() .getresult()的区别 await:Task.Run里面的逻辑是新开的线程去执行的,await Task.Run后面逻辑都在新开的线程去执行。private async void MainWindow_Loaded(object sender RoutedEventArgs e){Task.Run(async () ={ 执行顺序:1,线程:3Console.WriteLine(Thread.CurrentThread.ManagedThr ...

C# 线程 使用 需要 注意 事项

一个基于.Net Core 开源的物联网基础平台

在智慧工厂领域,智慧城市领域,都需要对设备进行监控。比如工厂需要对周围环境温度、湿度、气压、电压,灯的开关进行监控。这时候就需要物联网平台来进行管理。 在智慧工厂领域,宝马集团通过英伟达的Omniverse平台在计算机中创建数字孪生工厂,并在数字孪生工厂中进行改变生产线配置、工人动线、仓储管理等实验。 今天给大家推荐一个基于. Ce 开源的物联网基础平台。 项目简介 一个基于 . 6.0 使用C#语言编写的以实现可见与不可见的物理设备数字孪生的物联网平台。用于数据的收集、处理、可视化、设备管理、设备预警、 ...

一个 基于 Net Core 开源 联网 基础 平台

C#并发编程-3 并行编程基础

如果程序中有大量的计算任务,并且这些任务能分割成几个互相独立的任务块,那就应该使用并行编程。 并行编程用于分解计算密集型的任务片段,并将它们分配给多个线程。这些并行处理方法只适用于计算密集型的任务。 一 数据的并行处理 如果有一批数据,需要对每个数据进行相同的操作,其操作是计算密集型的,需要耗费一定的时间。 Parallel 类型有 FEach 方法可以解决上述问题。 下例使用了一批矩阵,对每一个矩阵都进行旋转,Matrix类的Rotate方法是计算密集型的任务。void RotateMatrices(I ...

C# 并发 编程 并行 编程 基础

C#爬虫之通过Selenium获取浏览器请求响应结果

前言 在进行某些爬虫任务的时候,我们经常会遇到仅用Http协议难以攻破的情况,比如协议中带有加密参数,破解需要花费大量时间,那这时候就会用Selenium去模拟浏览器进行页面上的元素抓取 大多数情况下我们用Selenium只是爬取一下页面上可见的元素信息或者做一些模拟人工的操作,但页面可见元素的数据字段毕竟有限,有许多有用的字段隐藏在接口响应中的,但是要如何拿到接口响应内容呢? 在网上搜索Selenium如何获取Chrome中wk数据包响应结果,大多数的文章都是Python或者Java,C#的资源少之又少 ...

C# 爬虫 通过 Selenium 获取 浏览器 请求 响应 结果

C#-多态

多态静态多态性,重载同一个方法中有多个相同名称的方法,但参数不一样。 在编译阶段(程序未运行的时候),函数之间就产生了一对一的关系。 减少函数的命名,多个相同的函数可以使用相同的命名。Mathf f = new Mathf() f.Add(10001)class Mathf {public void Add(float a) {}public void Add(float a float b) {} }动态多态性 重写父类使用 virtual 形成虚方法,子类使用override冲洗对父类的方法进行重写。 ...

C# 多态

深入了解WPF中ObservableCollection及跨线程处理ObservableCollection

WPF的ObservableCollection在增删改的时候,通过继承INotifyCollectionChanged使用CollectionChanged通过依赖属性发生了变化。(本篇的例子从:https:blog.lindexi.compostwin10uwp%E9%80%9A%E7%9F%A5%E5%88%97%E8%A1%A8.html、 https:blog.lindexi.compostWPF%E5%A4%9A%E7%BA%BF%E7%A8%8B%E4%B8%8B%E8%B7%A8%E7% ...

深入 了解 WPF ObservableCollection 线程 处理 ObservableCollection