- 博客(34)
- 资源 (3)
- 收藏
- 关注
原创 C# 图片处理 - 图片水印
在图像处理中,图片水印是一种常见的技术,它可以在图像上添加文本或图形,用于标识、保护或美化图像。在本文中,我们将介绍如何使用 C# 来实现图片水印,包括常用的属性和方法,以及一些示例代码。
2024-08-28 09:45:19
94
原创 人工智能时代,程序员如何保持核心竞争力?
随着AI辅助编程工具如ChatGPT、MidJourney、Claude等大语言模型的兴起,程序员的工作环境正经历一场深刻的变革。这些工具不仅能够自动生成代码片段,提供即时的代码建议,还能协助进行代码审查和优化,甚至在一定程度上参与软件开发的全过程。这种趋势引发了广泛的讨论,一方面有人担忧AI会取代程序员的部分工作,另一方面也有人看到了AI作为高效助手的潜力。面对这一变革,程序员如何保持和提升自身的核心竞争力成为了一个重要议题。
2024-08-09 14:00:03
291
原创 C#代码重构:提升代码质量的5个技巧
代码重构是每个开发者都应该掌握的重要技能。通过重构,我们可以在不改变代码外部行为的前提下,优化代码结构,提高可读性和可维护性。本文将介绍5个强大的C#重构技巧,帮助您将代码提升到一个新的水平。
2024-08-06 14:40:29
176
原创 C# WinForms 开发中防止同一应用运行多个实例
在开发WinForms应用程序时,有时需要防止同一个应用程序的多个实例同时运行。这种需求在某些情况下非常重要,例如,当你需要确保某个资源(如文件或数据库)只被一个应用实例访问时。本文将介绍几种防止同一应用运行多个实例的方法,提供详细的代码示例,并输出为 Markdown 格式。
2024-08-02 14:19:25
361
原创 避免在循环中调用数据库操作:提升C#程序性能的有效方法
其实最佳实践是用像SqlSugar这样的ORM类来搞。在开发C#应用程序时,特别是在处理大量数据时,不可避免地需要与数据库进行交互。然而,如果在循环中频繁进行数据库操作,会导致性能问题、增加数据库负担,甚至可能导致瓶颈。本文将探讨如何避免在循环中进行数据库操作,并提供详细的例子来说明这些方法。为什么要避免在循环中调用数据库操作?在循环中进行数据库操作会带来以下几个问题:性能问题:每一次数据库操作都会涉及网络通信、IO操作和数据库处理时间,频繁调用会大幅降低程序的性能。增加数据库负担:频繁的数据
2024-08-02 14:01:40
504
原创 解释 Git 的基本概念和使用方式。
推送(Push):推送操作用于将本地仓库的代码更新推送到远程仓库。远程仓库(Remote Repository):远程仓库是存储在云服务器或其他计算机上的Git仓库。当一个分支的开发完成后,可以将其合并到主线代码中以确保新功能或修复的问题可以与其他代码一起工作。当其他开发人员在远程仓库中提交了新的代码时,可以使用拉取操作将这些变更同步到本地仓库。提交(Commit):提交是将代码变更保存到Git仓库中的操作。仓库可以是本地仓库(存储在本地计算机上)或远程仓库(存储在服务器上)。
2024-08-02 10:35:40
269
原创 抽象类与接口的区别
抽象类中的成员可以是私有的(只要它们不是抽象的),受保护的,内部的或者受保护的内部成员,但是接口中的成员必须是公共的(默认就是公共的)。它们的派生类只能继承一个基类(所谓的单继承,多接口继承),即:只能直接继承一个抽象类,但是可以继承任意多个接口。三:接口里定义的变量只能是公共的静态的常量,抽象类中的变量是普通变量。抽象类中可以包含字段,构造函数,析构函数,静态成员等,接口中不可以。五:抽象类和接口都是用来抽象具体对象的,但是接口的抽象级别最高。四:接口是设计的结果,抽象类是重构的结果。
2023-07-01 11:30:32
310
原创 关于C#任务习题
答:AggregateException是一个异常集合,因为Task中可能抛出异常,所以我们需要新的类型来收集异常对象,处理异常时可采用AggregateException.Handle()方法,为AggregateException中的每个异常都指定一个要执行的表达式,Handle()方法的重要特点在于它是一个断言,针对Handle()委托成功处理的任何异常,断言应返回True,当任务执行过程中抛出了异常并未被处理时,任务的状态将从"Running"(运行中)转变为"Faulted"(故障)。
2023-06-30 18:52:38
254
原创 const、let、var
另一方面,window对象有实体含义,指的是浏览器的窗口对象,顶层对象是一个有实体含义的对象,也是不合适的。但对于复合类型的数据(主要是对象和数组),变量指向的内存地址,保存的只是一个指向实际数据的指针,const只能保证这个指针是固定的(即总是指向另一个固定的地址),至于它指向的数据结构是不是可变的,就完全不能控制了。const 声明方式,除了具有 let 的上述特点外,其还具备一个特点,即 const 定义的变量,一旦定义后,就不能修改,即 const 声明的为常量。
2023-05-20 15:23:47
47
原创 C#高级教程
语法上没有任何错误,只不过在运行过程由于某些原因出现了问题。转义符\n:换行(苹果系统或者控制台)\t:制表\b:删除前面的字符(注意:放在字符串的两端没有效果\r\n:换行(win系统)\:表示一个\可以这样用@"F:\fjld\fd\a\q.txt"取消在字符串中的转义作用在声明变量的最前面加const属性的作用就是保护字段、对字段的赋值和取值进行限定。属性的本质就是两个方法,一个叫get()一个叫set()。1.抽象成员必须标记为abstract,并且不能有任何实现。
2023-05-06 15:29:47
1995
1
原创 C#构造函数
C#中构造函数是在创建给定类型的对象时执行的类方法。构造函数具有与类相同的名称,它通常初始化新对象的数据成员。不带参数的构造函数称为“默认构造函数无论什么时候,只要使用new运算符实例化对象,并且不为 new 提供任何参数,就会调用默认构造函数。除非类是静态的,否则C#编译器将为无构造函数的类提供一个公共的默认构造函数,以便该类可以实例化。public 类名(){}构造函数可分为:实例构造函数,静态构造函数,私有构造函数(下面会详细介绍)
2023-04-23 19:16:22
3922
1
原创 C#基础语法---符号
符号:??名称:空合并运算符用于定义可空类型和引用类型的默认值。如果此运算符的左操作数不为null,则此运算符将返回左操作数,否则返回右操作数。
2022-12-01 14:42:02
506
转载 [FromQuery]— .NET Core WEB API中接口参数的模型绑定的理解
[FromQuery]— .NET Core WEB API中接口参数的模型绑定的理解
2022-08-11 09:59:00
5519
转载 DBCHM最简单、最实用的数据库文档生成工具
DBCHM 是一款数据库文档生成工具! 该工具从最初支持chm文档格式开始,通过开源,集思广益,不断改进,又陆续支持word、excel、pdf、html、xml、markdown等文档格式的导出。
2022-08-05 16:13:44
1169
3
原创 关于DDD框架的总结
关于DDD框架的知识(黄色部分为自己根据项目的理解分析)DDD(domain driven design领域驱动设计)框架包括User Interface(门面层)、application(应用层)、domain(业务领域层)、infrastructure(基础设施层)分类的依据是:越往上,预期变动越频繁;越往下,预期变动越少。ui(controller,Dto,handle,filter)->application(service,impl)->domain(service,impl)->infrastr
2022-06-29 13:27:59
571
原创 关于异步async await
前端async await 今日学习了async await异步调用方法,先单独分析async作为一个关键字放在函数的前面,表示该函数是一个异步函数,意味着该函数的执行不会阻塞后面代码的执行,异步函数的调用跟普通函数一样。async的内部实现原理就是如果该函数中有一个返回值,当调用该函数时,默认会在内部调用Promise.solve() 方法把它转化成一个Promise 对象作为返回,若函数内部抛出错误,则调用Promise.reject()返回一个Promise 对象。 再分析await即等待
2022-06-29 13:26:04
289
原创 c#猜拳游戏
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace 猜拳游戏{ class Program { static void Main(string[] args) { //完成一个简单的儿时游戏-剪子包袱锤。提示玩家出拳,玩家出拳后,电脑.
2022-06-29 13:24:22
1232
原创 数据库高级题
练习题第一题、如下图所示:有学生表student(学号,姓名,出生日期,性别),课程表course(C_id表示课程号,c_name表示课程名字t_id表示老师编号),成绩表score(学号,课程号,成绩): 使用SQL语句为完成以下操作:1.用函数实现,查询"马"姓老师的数量select count(*)from studentwhere s_name like ‘马%’SELECT COUNT(*) FROM TEACHER WHERE TNAME LIKE '马%';select sc.s_id
2022-06-27 10:27:54
1095
原创 根据图片用Vue写项目
Home.vue<template> <div class="home"> <!-- <div class="og"> <div class="tou"> <img src="../assets/未标题-1.png" /> <img class="i2" src="../assets/btn_home_caogen.png" /> </di...
2021-04-15 09:47:10
696
原创 layui帮助文档
----------------------------------表格显示图片------------------------------------------------------需要在表格页面,</head>前面添加的CSS样式代码如下<style>.layui-table-cell{height:auto!important;}.layui-tableimg{max-width:100%;}</style>...
2021-04-15 08:24:34
1617
原创 猜拳游戏
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace 猜拳游戏{ class Program { static void Main(string[] args) { //完成一个简单的儿时游戏-剪子包袱锤。提示玩家出拳,玩家出拳后,电脑.
2021-04-15 08:19:07
84
原创 jquery常用方法
-----------------------------------jquery常用方法------------------------------------------------------------------------------获取元素//$(this)获取当前选中元素//parent()方法返回被选元素的直接父元素。//siblings()方法返回被选元素的所有同级元素。//children()方法返回返回被选元素的所有直接子元素。列如:$(this...
2021-04-15 08:16:44
116
原创 Vuex 中的主要核心概念
Vuex 中的主要核心概念state:定义属性的获取属性值 this.$store.state.属性名mutations:改变state里的属性值调用: this.$store.commit(‘方法名’,参数…)actions:异步执行 mutations里的方法,延迟1秒实行调用:this.$store.dispatch(‘异步方法名’)getters:计算state里的属性获取新的属性调用:this.$store.getters.计算属性名...
2021-04-14 19:11:01
74
Vue使用方法和基础知识了解学习
2024-08-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人