随笔分类 - .NET技术
摘要:大家好,我是张飞洪,感谢您的阅读,我会不定期和你分享学习心得,希望我的文章能成为你成长路上的垫脚石,让我们一起精进。 为了了解ASP.NET Core Web API的版本控制,我们必须了解API中的一些版本控制策略,然后将API版本控制与OpenAPI集成,以便我们可以在Swagger UI中看到
阅读全文
摘要:大家好,我是张飞洪,感谢您的阅读,我会不定期和你分享学习心得,希望我的文章能成为你成长路上的垫脚石,让我们一起精进。 本章是《定制ASP NET 6.0框架系列文章》的第五篇。在本章,我们将回答如何在.NET 6.0中配置WebHostBuilder。 在阅读第4章“使用Kestrel配置和定制HT
阅读全文
摘要:大家好,我是张飞洪,感谢您的阅读,我会不定期和你分享学习心得,希望我的文章能成为你成长路上的垫脚石,让我们一起精进。 本章是《定制ASP NET 6.0框架系列文章》的第四篇。在本章,我们将学习ASP.NET Core的Kestrel配置和自定义HTTPS,好我们开始正文。 在ASP.NET Cor
阅读全文
摘要:大家好,我是张飞洪,感谢您的阅读,我会不定期和你分享学习心得,希望我的文章能成为你成长路上的垫脚石,让我们一起精进。 本章是《定制ASP NET 6.0框架系列文章》的第二篇。在本章,我们将回答如何在.NET 6.0中定制应用配置。 本文的主题是应用程序配置。要介绍的是如何使用配置、如何自定义配置,
阅读全文
摘要:大家好,我是张飞洪,感谢您的阅读,我会不定期和你分享学习心得,希望我的文章能成为你成长路上的垫脚石,让我们一起精进。 本章是《定制ASP NET 6.0框架系列文章》的第一篇。在本章,我们将回答如何在.NET 6.0中定制日志记录。默认日志记录仅写入控制台或调试窗口,这在大多数情况下都很好,但有时需
阅读全文
摘要:为了高效开发,节约编写文档的成本,API服务使用Swagger来描述 一、API设计原则 控制API的粒度和数量 命名要遵循简单、可读、统一原则; 优先设计API,然后编码 二、URL设计【针对后端开发】 2.1 HTTP规范 动词目前暂时以下面两种 HTTP 方法,对应 CRUD 操作。 2.2
阅读全文
摘要:老A说的一句话让我很受启发,想要深入了解框架,你要把精力聚焦在架构设计的层面来思考问题。而透彻了解底层原理,最好的笨办法就是根据原理对框架核心进行重建或者说再造。看起来没有捷径,也是最快的捷径。 题外话 题外话 相信很多读者已经看过老A写的这篇文章《200行代码,7个对象——让你了解ASP.NET
阅读全文
摘要:一、前言 线程同步其实很简单,但是往往被老师教的很复杂。这是之前上课受的伤。脑袋瓜当人人家的跑马场,被蹂躏一番,最后老师留下的是先入为主的错误,以至于后面不停的干扰我的理解,纠起错来,真是不知道浪费了多少精力。 二、什么是线程同步 一直想要找一个良好的方式来表达什么是线程同步。 先看一个模拟线程同步
阅读全文
摘要:对大型网站,技术涉及面非常广,对硬件,软件,编程语言,Web Service,防火墙等等有很高要求。 面对大量用户,高并发请求,可以使用高性能服务器,高性能编程语言,高性能数据库,加大带宽等,这意味着巨大的投入。 如果你没有这样的打算,而又想获得更好的系统性能,则需要我们精打细算,从"软"的方面着手。 如果你有过以下的一些用法,或者有不同见解,请赐教。 (1)Foreach比for有更好的执行效率。 Foreach所花的时间大约只有for的30%,通过测试结果,在两者都可以使用的情况下,我们推荐效率更高的Foreach。另外用for写入数据的时间大约是读取数据时间的10倍。
阅读全文
摘要:有一次面试,主管说请你谈谈ADO.NET,虽然知道,但是总是觉得不是很系统的了解,更不用说把这个技术说得很明白了,所以回来恶补了一下,不知道这次的学习够不够清晰和明了。总体结构图1.SqlCommand2.SqlDataAdapter3.DataSet4.DataTable
阅读全文
摘要:(一)params---------可以让参数随意变化的关键字 1 staticvoid Main(string[] args) 2 { 3 TestParams(1, 2, 3); 4 TestParams(1, 2, 3, 4, 5, 6);//注意参数随意变换 5 6 TestParams2(1, "a", "b", 12, 52, 16); 7 8 Console.ReadLine(); 9 }10 11 staticvoid TestParams(paramsint[] list)12 {13 string str =string.Empty;
阅读全文
摘要:static void Main(string[] args) { TestString(); TestStringBuilder(); } public static void TestString() { DateTime startTime = DateTime.Now; string str = string.Empty; for (int i = 0; i < 10000; i++)// 一万次 { str += "a"; } DateTime endTime = DateTime.Now; TimeSpan timeSpan = endTime - sta
阅读全文