C#TMS系统学习(BaseCity页面)
C#TMS系统代码基础页面BaseCity学习 本人纯新手,刚进公司跟领导报道,我说我是java全栈,他问我会不会C#,我说大学学过,他说这个TMS系统就给你来管了。外包已经把代码给我了,这几天先把增删改查的代码背一下,说不定后面就要赶鸭子上架了 Service页面 using = impt 导入 using Microsoft.AspCe.Mvc using SHZY.BaseData.Entitys.TMS.Dto.City using SHZY.BaseData.Interfaces.TMS ...
解析 ABP vNext 依赖注入实现【属性注入】的原理
前言 这几天闲来没事看看ABP vNext的文档和源码,关于关于依赖注入(属性注入)这块儿产生了兴趣。 我们都知道。Volo.ABP 依赖注入容器使用了第三方组件Autofac实现的。有三种注入方式,构造函数注入和方法注入和属性注入。 ABP的属性注入原则参考如下:这时候我就开始疑惑了,因为我知道Autofac框架默认不开启隐式的属性注入,那么ABP具体是哪里配置属性注入的呢? 接下来就是漫长的阅读源代码过程了。 解析源代码 首先我是用的是abp vNext的6.0.3版本,以下只列出关键代码 A. A
使用.NET查询日出日落时间
在WPF中,通过资源文件实现主题切换是个常见的功能,有不少文章介绍了如何实现手动切换主题。那如何实现自动切换主题呢?通常有两种机制:一是跟随系统明暗主题切换,二是像手机操作系统那样根据日出日落时间自动切换。本文将以终为始,采用倒推法一步步介绍如何使用.免费获取日出日落时间。 获取日出日落时间 日出日落时间会随季节及各地方经度纬度的不同而不同,此外还会受到大气折射等因素的影响。计算日出和日落时间通常需要考虑以下因素:日期:具体的年、月、日,用于确定太阳相对于地球的位置。 经度:地理位置的经度,影响日出和日落
C#winform实现通过点击Button来切换不同的界面
C#winfm实现通过点击Button来切换不同的界面 实现目标:点击左边菜单栏里面的Button实现右边区域切换不同界面。 步骤: 1.界面布局 由于实现目标需要用到容器控件,所以需要选择合适的容器控件来进行左右区域布局。常用的容器控件有:Panel,FlowLayoutPanel,GroupBox,TabControl,SplitContainer,TableLayoutPanel,ToolStripContainer。Panel。面板,提供基本的容器功能,可以包含其他控件,并可以设置滚动条和边框样式
dotnet 9 WPF 支持 Style 的 Setter 填充内容时可忽略 Value 标签
本文记录 WPF 在 dot 9 的一项 XAML 编写语法改进点,此改进点用于解决编写 Style 的 Setter 进行给 Value 赋值时,不能将 Value 当成默认内容,需要多写 Value 标签的问题。通过此改进点可减少两行 XAML 代码在原先的 WPF 版本里面,对 Style 的 Setter 填充复杂的对象内容时,大概的示例代码如下 Style TargetType="Button"Setter Property="Template"Setter.ValueControlTempla
【OpenVINO™】基于 C# 和 OpenVINO™ 部署 Blazeface 模型实现人脸检测
前言OpenVINO™ C# API 是一个 OpenVINO™ 的 . wrapper,应用最新的 OpenVINO™ 库开发,通过 OpenVINO™ C API 实现 . 对 OpenVINO™ Runtime 调用,使用习惯与 OpenVINO™ C++ API 一致。OpenVINO™ C# API 由于是基于 OpenVINO™ 开发,所支持的平台与 OpenVINO™ 完全一致,具体信息可以参考 OpenVINO™。通过使用 OpenVINO™ C# API,可以在 .、. Framewk等
【OpenVINO™】使用OpenVINO™ C# API 部署 YOLO-World实现实时开放词汇对象检测
YOLOWld是一个融合了实时目标检测与增强现实(AR)技术的创新平台,旨在将现实世界与数字世界无缝对接。该平台以YOLO(You Only Look Once)算法为核心,实现了对视频中物体的快速准确识别,并通过AR技术将虚拟元素与真实场景相结合,为用户带来沉浸式的交互体验。在本文中,我们将结合OpenVINO™ C# API 使用最新发布的OpenVINO™ 2024.0部署 YOLOWld实现实时开放词汇对象检测: OpenVINO™ C# API项目链接: https:github.comguoj
班级擂台(光荣)榜
擂台(光荣)榜是一款高效的工具,能够迅速展示学生在各个时期的总得分排名。用户可以根据左上角的日期搜索特定时间段内班级学生的排名,也可以根据右上角的“本周”、“上周”、“本月”和“上月”快速定位近期学生的综合名次。在主界面的左侧,系统会自动汇总各小组成员的得分,并展示得分前三名的小组。右侧部分则主要是班级学生个人的展示舞台,按照个人积分的高低依次呈现学生的姓名和照片。只有班级得分排名前14的同学才有资格登上擂台榜,而其他同学如果想登上擂台榜,可以向这14位同学发起挑战,以他们为榜样。 通过擂台(光
.NET 9 的几个新特性,新颖吗?
简介 继. 8之后,. 9在云原生应用程序得到了增强和性能得到提升。它是STS版本,将获得为期18个月的标准支持服务。你可以到官网下载. 9。它的几个改进如下: 序列化 在System.Text.Json中,. 9为序列化JSON提供了新的选项和一个新的单例,使得使用Web默认值进行序列化变得更加容易。 1、缩进选项 var options = new JsonSerializerOptions { WriteIndented = true Indentacter = '\t' I
blazor中的PageTitle输出keywords和description,自定义组件
在blaz的PageTitle中不具备输出keywds和deion的功能,而如果直接使用mate标签,输出中文时会变成乱码,所以我给大家推介下面的代码解君愁:1 @ PageTitle@Title @AppTitlePageTitle @2 HeadContent3 @(new MarkupString($"meta name=\"keywds\" content=\"{Keywds}\" "))4 @(new MarkupString($"meta name=\"deion\" con
C#使用MX Component实现三菱PLC软元件数据采集的完整步骤(仿真)
前言 本文介绍了如何使用三菱提供的MX Component插件实现对三菱PLC软元件数据的读写,记录了使用计算机仿真,模拟PLC,直至完成测试的详细流程,并重点介绍了在这个过程中的易错点,供参考。 用到的软件: 1. PLC开发编程环境GX Wks2,GX Wks2下载链接 https:www.mitsubishielectricfa.cnsitefilesoftwaredetailid=18 2.实现计算机与可编程控制器通信的软件工具MX Component,MX Component下载链接 htt
十年沉淀,重启开发之路
十年沉淀,重启开发之路 十年前,我沉浸在开发的海洋中,每日与代码为伍,与算法共舞。那时的我,满怀激情,对技术的追求近乎狂热。然而,随着岁月的流逝,生活的忙碌逐渐占据了我的大部分时间,让我无暇顾及技术的沉淀与积累。 十年间,我经历了职业生涯的起伏和变迁。从初出茅庐的菜鸟到逐渐崭露头角的开发者,我见证了技术的飞速发展和行业的日新月异。然而,在这个过程中,我也逐渐忘记了最初的梦想和追求,开始为了生活而奔波,为了工作而忙碌。 但在这漫长的十年里,我并非一无所获。我积累了丰富的实践经验,对技术有了更深刻的理解和掌握
C#.NET体系图文概述—2024最全总结
C# 是一种简单、现代、面向对象和类型安全的编程语言。。 . 是由 Microsoft 创建的开发平台,平台包含了语言规范、工具、运行,支持开发各种应用,如Web、移动、桌面等。.框架有多个实现,如. Framewk、. Ce(及后续的. 5+版本),以及社区版本Mono。除此以外,C#.体系还有很多概念,本文就来简单了解下C#、. Framewk、CLR、.Ce、CTS、JIT等概念。 01、.发展历史: Framewk ⇒ Ce简单梳理一下.框架的发展:. Framewk ⇒. (Ce)。表格原文原文
如何基于surging跨网关跨语言进行缓存降级
概述 surging是一款开源的微服务引擎,包含了rpc服务治理,中间件,以及多种外部协议来解决各个行业的业务问题,在日益发展的今天,业务的需求也更加复杂,单一语言也未必能抗下所有,所以在多语言行业解决方案优势情况下,那么就需要多语言的协同研发,而对于协同研发环境下,统一配置的网关,多语言访问调用必然会涉及到需要数据缓存的问题,那么怎么做到跨网关跨语言缓存降级呢?那么将在此篇文章中进行讲解。 如何创建拦截器 继承IIntercept ,创建拦截,如下代码所示public class LogP
【YoloDeployCsharp】基于.NET Framework的YOLO深度学习模型部署测试平台
1. 项目介绍 基于. Framewk 4.8 开发的深度学习模型部署测试平台,提供了YOLO框架的主流系列模型,包括YOLOv8~v9,以及其系列下的Det、Seg、Pose、Obb、Cls等应用场景,同时支持图像与视频检测。模型部署引擎使用的是OpenVINO™、TensRT、ONNX runtime以及OpenCV DNN,支持CPU、IGPU以及GPU多种设备推理。其中,OpenVINO™以及TensRT的C#接口均为自行开发,项目链接为: OpenVINO™ C# API : https:
【UWP】修改清单脱离沙盒运行
总说周知,UWP 是运行在沙盒里面的,所有权限都有严格限制,和沙盒外交互也需要特殊的通道,所以从根本杜绝了 UWP 毒瘤的存在。但是实际上 UWP 只是一个应用模型,本身是没有什么权限管理的,权限管理全靠 App Container 沙盒控制,如果我们脱离了这个沙盒,UWP 就会放飞自我了。那么有没有这种可能呢? 我们打开设置应用,通过任务管理器查看进程,就会发现它并没有 Runtime Broker 存在,这个进程是用来在沙盒间代理的,这说明微软给 UWP 开了一个后门。 那么我们是不是也有办法脱离沙盒
.NET CORE 完美支持AOT 的 ORM SqlSugar 教程
1、AOT适合场景 Aot适合工具类型的项目使用,优点禁止反编 ,第一次启动快,业务型项目或者反射多的项目不适合用AOT AOT更新记录: 实实在在经过实践的AOT M 5.1.4.117 +支持AOT 5.1.4.123 +支持CodeFirst和异步方法 5.1.4.129preview12+ 修复 db.Unionall bug 5.1.4.129preview17+ 修复 db.Union bug 5.1.4.135preview05+ 修复 查单列数据 出错 5.1.4.140 修复 db
.net事件
描述(做一个简单的记录): 事件(event)的本质是一个委托;(声明一个事件: public event TestDelegate eventTest) 委托(delegate)可以理解为一个符合某种签名的方法类型;比如:TestDelegate委托的返回数据类型为string,参数为 int和EventPara,而TestI方法的参数和返回类型和TestDelegate一致,则可以把TestI方法赋值给委托tI; 注册事件:我在构造函数的时候注册这个事件(eventTes
.NET中使用 openGauss C# ORM
openGauss(GaussDB ) openGauss是一款全面友好开放,携手伙伴共同打造的企业级开源关系型数据库。openGauss采用木兰宽松许可证v2发行,提供面向多核架构的极致性能、全链路的业务、数据安全、基于AI的调优和高效运维的能力。openGauss深度融合华为在数据库领域多年的研发经验 连接字符串 用法和PGSQL一样 ,唯一区别 在连接字符串 后面加上No Reset On Close=truePT=5432DATABASE=SqlSugar4xTestHOST=localhos
WPF多语言支持:简单灵活的动态切换,让你的程序支持多国语言
概述:本示例演示了在WPF应用程序中实现多语言支持的详细步骤。通过资源字典和数据绑定,以及使用语言管理器类,应用程序能够在运行时动态切换语言。这种方法使得多语言支持更加灵活,便于维护,同时提供清晰的代码结构。 在WPF中实现多语言的一种常见方法是使用资源字典和数据绑定。以下是一个详细的步骤和示例源代码,演示如何在WPF应用程序中实现动态切换语言。文末提供代码下载。 先看效果: 步骤 1: 准备资源文件 首先,为每种语言创建一个资源文件。资源文件的命名约定为Resources.{语言代码}.xaml。例如,
轻松使用Aspire rabbitmq framework
轻松使用aspire rabbitmq 创作初衷 aspire 是微软基金会推出的新一代云原生编排框架,具体请看 https:learn.microsoft.comenusdotaspiregetstartedaspireoverview 我从preview1 preview6(目前最新 202451) 一直都有使用,在第一版的时候我就用它放入了我的一个微服务中(https:gitee.comSkyNingDuanPublicActivityServices.git),一直和它迭代. 在其中我一直使用外
Windows下绑定线程到指定的CPU核心
在某些场景下,需要把程序绑定到指定CPU核心提高执行效率。通过微软官方文档查询到Windows提供了两个Win32函数:SetThreadAffinityMask和SetProcessAffinityMask 为指定线程和进程设置处理器关联掩码。通俗的讲就是在指定的CPU核心上执行线程或者进程。这里的CPU核心指的是逻辑核心,而非物理核心。SetThreadAffinityMask SetThreadAffinityMask用于设置指定线程的处理器关联掩码,从而实现线程对处理器的绑定。 SetThread
WPF中轻松生成动态图表:实例详解(MVVM模式)
概述:本文代码示例演示了如何在WPF中使用Livets库创建动态条形图。通过创建数据模型、ViewModel和在XAML中使用`Cartesiant`控件,你可以轻松实现图表的数据绑定和动态更新。我将通过清晰的步骤指南包括详细的中文注释,帮助你快速理解并应用这一功能。 先上效果: 在WPF中使用Livets生成动态的条形图表需要以下步骤。以下是详细的实例源代码: 步骤 1: 引用Livets库 首先,在项目中引用Livets库。你可以通过NuGet包管理器来安装Livets.Wpf: InstallPac
.NET 中使用 GaussDB C# ORM
openGauss(GaussDB ) openGauss是一款全面友好开放,携手伙伴共同打造的企业级开源关系型数据库。openGauss采用木兰宽松许可证v2发行,提供面向多核架构的极致性能、全链路的业务、数据安全、基于AI的调优和高效运维的能力。openGauss深度融合华为在数据库领域多年的研发经验 连接字符串 用法和PGSQL一样 ,唯一区别 在连接字符串 后面加上No Reset On Close=truePT=5432DATABASE=SqlSugar4xTestHOST=localhostP
C# 批量删除Excel中的重复行
当从不同来源导入Excel数据时,可能存在重复的记录。为了确保数据的准确性,通常需要删除这些重复的行。手动查找并删除可能会非常耗费时间,而通过编程脚本则可以实现在短时间内处理大量数据。本文将提供一个使用C# 快速查找并删除Excel重复项的免费解决方案。 以下是实现步骤: 1. 首先安装免费. Excel 库 Free Spire.XLS f .。( 可通过Nuget直接安装或者下载后手动安装) 2. 导入命名空间。 3. 使用 LoadFromFile() 方法加载Excel文件。 4. 获取指定
自动化测试数据生成:Asp.Net Core单元测试利器AutoFixture详解
引言 在我们之前的文章中介绍过使用Bogus生成模拟测试数据,今天来讲解一下功能更加强大自动生成测试数据的工具的库"AutoFixture"。 什么是AutoFixtureAutoFixture 是一个针对 . 的开源库,旨在最大程度地减少单元测试中的“安排(Arrange)”阶段,以提高可维护性。它的主要目标是让开发人员专注于被测试的内容,而不是如何设置测试场景,通过更容易地创建包含测试数据的对象图,从而实现这一目标。AutoFixture 可以帮助开发人员自动生成测试数据,减少手动设置测试数据的工作量
.NET Emit 入门教程:第七部分:实战项目1:将 DbDataReader 转实体
前言: 经过前面几个部分学习,相信学过的同学已经能够掌握 . Emit 这种中间语言,并能使得它来编写一些应用,以提高程序的性能。 随着 IL 指令篇的结束,本系列也已经接近尾声,在这接近结束的最后,会提供几个可供直接使用的示例,以供大伙分析或使用在项目中。 M 实现的三个通用阶段: 第一阶段: 在以往新手入门写 M 实现的时候,往往会借助代码生成器,来针对整个数据库,生成一个一个的基础增删改查。 用代码生成器提前生成针对性的方法,运行效率高,但开发效率有可维护性低。 第二阶段: 随着对程序进一步的理解,
Elasticsearch 系列(六)- ES数据同步和ES集群
本章将和大家分享ES的数据同步方案和ES集群相关知识。废话不多说,下面我们直接进入主题。 一、ES数据同步 1、数据同步问题 Elasticsearch中的酒店数据来自于mysql数据库,因此mysql数据发生改变时,Elasticsearch也必须跟着改变,这个就是Elasticsearch与mysql之间的数据同步。 在微服务中,负责酒店管理(操作mysql )的业务与负责酒店搜索(操作Elasticsearch )的业务可能在两个不同的微服务上,数据同步该如何实现呢? 2、数据同步方案一:同步调用3
dotnet C# 简单的追加文件夹到 ZipArchive 压缩文件的方法
本文将告诉大家一个在 ZipArchive 里追加文件夹,以及添加过滤文件处理的压缩文件辅助方法实现的方法的代码如下 summary 追加文件夹到压缩文件里面 summary param name="archive"param param name="sourceDirectyName"param param name="zipRelativePath"在压缩包里面的相对路径param param name="compressionLevel"param param name="fileCanAddedP
一步步教你在 Windows 上构建 dotnet 系应用的 UOS 软件安装包
本文将详细指导大家如何逐步为 dot 系列应用创建满足 UOS 统信系统软件安装包的要求。在这里,我们所说的 dot 系列应用是指那些能够在 Linux 平台上构建 UI 框架的应用,包括但不限于 CPF 应用、UNO 应用、Avalonia 应用等基于 dot 系的自发布自包含的能力,可以将 dot 系的应用进行发布为独立应用,无需框架依赖,如此即可执行 deb 包的二进制打包过程,从而很方便对接上 UOS 统信系统软件安装包的要求 整体步骤可以分为三个大步骤:步骤一:发布应用 步骤二:组织文件结构 步