摘要:大家好,今天给大家分享一套 C# 与 .NET 设计模式视频教程,目前是我发现的基于 .NET 来讲设计模式的教程中最好也是最全的一套(含配套源代码)。 我每天上下班中上都看两集,今天终于看完了(中间对于非常简单的知识点使用了 1.25 倍加速)。尽管我是个 .NET 老司机,但看完后依然收获不少。 阅读全文
posted @ 2020-06-20 13:52 精致码农 阅读(3101) 评论(3) 推荐(8) 编辑
摘要:.NET 6 预览版 3 现已推出,其中包括许多对新的 ASP.NET Core 改进。以下是本次预览版的新内容...... 阅读全文
posted @ 2021-04-10 10:11 精致码农 阅读(4030) 评论(18) 推荐(39) 编辑
摘要:在 C 和 C# 编程语言中,结构体(Struct)是值类型数据结构,它使得一个单一变量可以存储多种类型的相关数据。在 C 语言中还有一种和结构体非常类似的语法,叫共用体(Union),有时也被直译为联合或者联合体。而在 C# 中并没有共用体这样一个定义,本文将介绍如何使用 C# 实现 C 语言中的 阅读全文
posted @ 2021-01-15 08:45 精致码农 阅读(1441) 评论(4) 推荐(15) 编辑
摘要:作者:Casey McQuillan 译者:精致码农 原文:http://dwz.win/YVW 说明:原文比较长,翻译时精简了很多内容,对于不重要的细枝末节只用了一句话概括,但不并影响阅读。 你还记得上一次一个无足轻重的细节点燃你思考火花的时刻吗?作为一个软件工程师,我习惯于专注于一个从未见过的微 阅读全文
posted @ 2020-12-17 21:42 精致码农 阅读(4171) 评论(52) 推荐(42) 编辑
摘要:在 Visual Studio 中有一个窗口叫 Immediate 窗口,中文版本应该叫即时窗口。默认会在你启动调试时在 VS 编辑器中弹出来。你也可以通过 Debug | Windows | Immediate 或者使用快捷键 Ctrl+Alt+I 手动把它调出来。 这个窗口很实用,尤其是在调试的 阅读全文
posted @ 2020-12-02 09:20 精致码农 阅读(4806) 评论(18) 推荐(56) 编辑
摘要:大多数系统在数据库存的都是系统的状态数据,比如一个用户表可能会存用户的姓名、头像、个性签名等信息。只存状态数据的传统模式会有什么问题呢? 问题起源 假设你公司做了一个系统,并正式上线了。经过一周的推广,老板问你要一些用户的行为数据。老板想知道所有用户平均修改个性签名的次数。 对于传统的数据库设计,当 阅读全文
posted @ 2020-11-30 09:23 精致码农 阅读(2389) 评论(14) 推荐(29) 编辑
摘要:最近工作中遇到一个这样的需求:在某个列表查询功能中,可以选择某个数字列(如商品单价、当天销售额、当月销售额等),再选择 小于或等于 和 大于或等于 ,再填写一个待比较的数值,对数据进行查询过滤。 如果只有一两个这样的数字列,那么使用 Entity Framework Core 可以这么写 LINQ 阅读全文
posted @ 2020-11-26 08:55 精致码农 阅读(2547) 评论(4) 推荐(25) 编辑
摘要:之前写了一篇文章《快速了解 ASP.NET Core Blazor》,大家关心最多的问题是,我该不该花时间去学习 Blazor。今天聊聊这个话题,并表达一下我个人的看法。 在此之前,我还是想不厌其烦的介绍一个 Blazor。 Blazor 是微软 .NET 团队开发的一个新的 UI 框架,目前生态发 阅读全文
posted @ 2020-11-19 07:12 精致码农 阅读(6219) 评论(58) 推荐(52) 编辑
摘要:.NET 5 旨在提供统一的运行时和框架,使其在各平台都有统一的运行时行为和开发体验。微软发布了与 .NET 协作的大数据(.NET for Spark)和机器学习(ML.NET)工具,这些工具共同提供了富有成效的端到端体验。在本文中,我们将介绍 .NET for Spark、大数据、ML.NET 和机器学习的基础知识,我们将研究其 API 和功能,向你展示如何开始构建和消费你自己的 Spark 作业和 ML.NET 模型。 阅读全文
posted @ 2020-11-16 08:57 精致码农 阅读(3464) 评论(11) 推荐(39) 编辑
摘要:多线程编程时,如果涉及同时读写共享数据,就要格外小心。如果共享数据是独占资源,则要对共享数据的读写进行排它访问,最简单的方式就是加锁。锁也不能随便用,否则可能会造成死锁和活锁。本文将通过示例详细讲解死锁和活锁是如何发生的​,以及如何避免它们。​ 避免多线程同时读写共享数据 在实际开发中,难免会遇到多 阅读全文
posted @ 2020-11-13 07:34 精致码农 阅读(3319) 评论(10) 推荐(45) 编辑
摘要:作者:Richard 翻译:精致码农-王亮 原文:http://dwz.win/WFz 说明:文章太长,后面关于 C# 9 语言新特性及平台新特性的部分没有翻译,这部分基本都是代码示例,请直接阅读原文。关于 C# 9 新特性的介绍也可以阅读我的系列文章[C# 9.0 新特性]。 我们很高兴今天(北京 阅读全文
posted @ 2020-11-11 09:21 精致码农 阅读(3430) 评论(20) 推荐(21) 编辑
摘要:线程的知识太多,知识点有深有浅,往深的研究会涉及操作系统、CPU、内存,往浅了说就是一些语法。没有一定的知识积累,很难把线程的知识写得全面,当然我也没有这个能力。所以想到一个点写一个点,尽量总结一些有用的知识点。线程是个大话题,这个系列可能会有好几遍关于线程的,先从基础的开始,热热身。 一些基础概念 阅读全文
posted @ 2020-11-10 09:04 精致码农 阅读(2596) 评论(12) 推荐(44) 编辑
摘要:C# 语言一贯秉承简洁优美的宗旨,每次升级都会带来一些语法糖,让我们可以使代码变得更简洁。本文分享两个使用 C# 9.0 提升 if 语句美感的技巧示例。 使用属性模式代替 IsNullOrEmpty 在任何你使用 IsNullOrEmpty 的时候,可以考虑这样替换: string? hello 阅读全文
posted @ 2020-11-06 08:40 精致码农 阅读(6425) 评论(47) 推荐(54) 编辑
摘要:自从 Windows Terminal 正式发布后就再没有用过 Windows 系统自带的终端了。主要是 Terminal 简洁且灵活,更重要的是支持特殊字体,通过一些简单的配置可以使得终端看起来更舒适养眼。 自从 Win 10 有了 Linux 子系统(WSL),早就把电脑上的 vmware 虚拟 阅读全文
posted @ 2020-11-04 09:45 精致码农 阅读(7710) 评论(2) 推荐(10) 编辑
摘要:要理解 C# 中的 volatile 关键字,就要先知道编译器背后的一个基本优化原理。比如对于下面这段代码: public class Example { public int x; public void DoWork() { x = 5; var y = x + 10; Debug.WriteL 阅读全文
posted @ 2020-10-28 08:49 精致码农 阅读(3070) 评论(23) 推荐(34) 编辑
摘要:原文:http://dwz.win/ThX 作者:Richard 翻译:精致码农-王亮 说明:本译文舍弃了少许我实在不知道如何翻译但又不是很重要的语句。 今天(10月13日)我们发布了 .NET 5.0 候选版本 2(RC2),它是 11 月 .NET 5.0 正式版发布前的最后一个 RC 版本。R 阅读全文
posted @ 2020-10-16 08:54 精致码农 阅读(4521) 评论(13) 推荐(31) 编辑
摘要:作者:Richard 翻译:精致码农-王亮 原文:http://dwz.win/Q4h 自从 .NET 5 宣贯以来,很多人都在问这对 .NET Standard 意味着什么,它是否仍然重要。在这篇文章中,我将解释 .NET 5 是如何改进代码共用并取代 .NET Standard 的,我还将介绍什 阅读全文
posted @ 2020-10-13 08:32 精致码农 阅读(4681) 评论(16) 推荐(57) 编辑
摘要:数据标注(Data Annotation)是类或类成员添加上下文信息的一种方式,在 C# 通常用特性(Attribute)类来描述。它的用途主要可以分为下面这三类: 验证 Validation:向数据添加验证规则 显示 Display:指定数据如何呈现给用户 模型 Modeling:添加关于用法和与 阅读全文
posted @ 2020-10-09 10:27 精致码农 阅读(2345) 评论(3) 推荐(16) 编辑
摘要:大家好,今天分享一些实用的 VS 技巧,而这些技巧我发现很多人都不知道。因为我经常在工作中遇到:我在同事电脑上解决问题,或在会议上演示代码示例时,使用了一些 VS “骚”操作,他们会好奇地问:你是怎么做到的?有时候你知道一些别人不知道的小技巧便可以让你显得更专业。 PS:本文所有示例演示均基于 VS 阅读全文
posted @ 2020-09-24 08:51 精致码农 阅读(8911) 评论(54) 推荐(125) 编辑
摘要:.NET 和大多数有二十年历史的技术一样,有很多历史遗留问题,特别是在产品命名和版本方面:.NET Framework, .NET Compact Framework, Silverlight, .NET Micro Framework, .NET Portable Class Libraries, .NET for Windows Store, .NET Native, .NET Core, .NET Standard 等等,这还不包括 Mono 系的产品。虽然 .NET 的这种演变是情有可原的,但它创造了一个巨大的学习成本:不计其数的概念。如果你是 .NET 的新手,你会从哪里开始?最新技术栈是什么? 阅读全文
posted @ 2020-09-23 08:46 精致码农 阅读(2525) 评论(6) 推荐(13) 编辑
摘要:原文:http://dwz.win/Qf8 作者:Richard 翻译:精致码农-王亮 说明:本文有不少超链接,由于微信公众号和头条平台外链会被剔除 URL 地址,所以原来本是超链接的内容会显示为纯文本,如果你需要这些信息可以移步到我的知乎和博客园阅读(搜索精致码农可找到我)。 今天我们发布了 .N 阅读全文
posted @ 2020-09-16 07:45 精致码农 阅读(4963) 评论(18) 推荐(51) 编辑