后端
未读
【CSharp】Windows服务操作帮助类
代码示例 using System;
using System.IO;
using Microsoft.Win32;
using System.Reflection;
using System.Collections;
using System.ServiceProcess;
using Syste
后端
未读
【ASP.NET MVC】重写JsonResult
新建一个类 CustomesJsonResult 继承自 MVC 自带的 JsonResult,重写它的 ExecuteResult 方法 public class JsonConvertResult : JsonResult
{
public JsonConvertResult()
后端
未读
【CSharp】面向对象中的属性和对象引用类型分析
前言 重要性: 【1】属性是我们开发中只要用到对象,很多时候,都会使用。同时属性也有一定的特殊性,所以,属性学习,是一个难点(相对的)。 【2】对象引用类型。解决我们将对象做为数据传递中,数据更新的同步问题。 一、对象的属性(Propery) 我们学习软件开发的目的是什么?就是数据处理和获取信息。始
后端
未读
【CSharp】获取电脑设备中的端口号
代码示例 /// <summary>
/// 获取可用端口号
/// </summary>
/// <param name="usefullName">是否使用完全名称</param>
/// <returns>端口号集合</returns>
public static string[] GetPo
后端
未读
【CSharp】JSON格式化
本文介绍了如何在C#中格式化JSON字符串,使其具有更好的可读性。文章首先展示了格式化效果,然后提供了一个名为ConvertJsonString的示例方法,该方法使用JsonSerializer和相关的JsonReader与JsonWriter来实现JSON的格式化。方法中设置了Formatting.Indented选项,并定义了缩进字符和缩进量,以美化输出的JSON结构。文章还提醒读者注意内容可能存在过时情况,并欢迎读者留言或联系作者进行反馈。
后端
未读
【CSharp】常用正则表达式
校验数字的表达式 数字:^[0-9]*$ n位的数字:^\d{n}\$ 至少n位的数字:^\d{n,}\$ m-n位的数字:^\d{m,n}$ 零和非零开头的数字:^(0|[1-9][0-9]*)$ 非零开头的最多带两位小数的数字:^([1-9][0-9]*)+(.[0-9]{1,2})?$
后端
未读
【CSharp】从Json文件中取出Json字符串并转换成对象
本文提供了一个 C# 语言的 JsonHelper 工具类,用于从 JSON 文件中读取 JSON 字符串并将其转换为 C# 对象。类中包含三个主要方法:
1. GetJson(string path): 从指定路径的文件中读取 JSON 字符串,同时去除注释,并处理文件编码。
2. ToObject<T>(this string json): 将 JSON 字符串反序列化为指定的 C# 对象类型 T。
3. ToJson<T>(this T data): 将 C# 对象 data 序列化为 JSON 字符串。
文章还包含了一个代码示例,展示了如何使用 JsonHelper 类来处理 JSON 数据。
后端
未读
【CSharp】时间戳
本文讨论了时间戳的概念,特别是Unix时间戳和JavaScript时间戳的区别。Unix时间戳表示从1970年1月1日起至现在的总秒数,而JavaScript时间戳则是总毫秒数。文章强调时间戳与时区无关,并提供了C#中将DateTime转换为Unix时间戳以及反向转换的方法。对于.NET 4.6及以上版本,可以使用新方法进行转换,而老方法则普遍适用。文章还讨论了DateTimeOffset的使用,包括Now和UtcNow的区别,以及如何处理时区信息。此外,还介绍了DateTime的Kind属性,以及如何通过DateTimeStyles参数指定时区。最后,文章提供了关于DateTimeOffset.Parse的默认时区行为的信息。
后端
未读
【CSharp】删除指定目录下文件(保留指定几天前的日志文件)
代码示例 /// <summary>
/// 插入日志公用方法
/// </summary>
/// <param name="msg"></param>
public static void insertLogs(string msg)
{
//日志输出盘符物理路径
string
后端
未读
【CSharp】实体对象序列化成Json并让字段的首字母小写
本文介绍了如何在C#中将一个匿名对象序列化为JSON字符串,并使用驼峰命名法(camelCase)来格式化JSON输出。示例代码展示了如何创建一个包含Name和Age属性的匿名对象,并使用JsonConvert.SerializeObject方法进行序列化。为了实现字段首字母小写,代码中设置了JsonSerializerSettings,指定了CamelCasePropertyNamesContractResolver作为ContractResolver。
后端
未读
【CSharp】解决Timer定时器的重入问题
本文提供了一个C#示例代码,演示了如何解决System.Timers.Timer定时器的重入问题。代码中定义了一个静态Timer对象aTimer和一个静态整型变量inTimer作为标志。SetTimer方法用于设置定时器的间隔、事件处理器、自动重置属性和启用定时器。OnTimedEvent是定时器事件的处理方法,它使用Interlocked.Exchange来确保在定时器事件触发时,如果前一个处理尚未完成,则放弃当前的处理。通过设置inTimer标志和使用Thread.Sleep,确保在指定的时间间隔内只执行一次操作。
后端
未读
【CSharp】解决读写文件时文件正由另一进程使用,因此该进程无法访问该文件
错误提示:文件“D:\Log\log20170317.txt”正由另一进程使用,因此该进程无法访问该文件。 FileStream fs = File.OpenRead(url);
StreamReader sr = new StreamReader((Sys
tem.IO.Stream)fs, Sy