首页
学习
活动
专区
圈层
工具
发布

.NET周刊 【7月第2期 2023-07-02】

welcome-to-the-new-era-of-app-development-introducing-avalonia-v11,a8907121-eae9-4a16-aca8-2432e1dac13a 【英文】.NET Community Toolkit 8.2.1 中提供了改进的源生成器和代码修复程序...https://github.com/jbogard/MediatR/releases/tag/v12.1.0 【英文】ReSharper 2023.2 EAP 7 引入预测调试器和其他更新 | .NET...技术:如何在配置模拟时选择最佳语法 https://dev.to/antfdev/moq-techniques-how-to-pick-the-best-syntax-when-configuring-your-mocks...-6-f398ba74b992 【日文】T[](数组)、MemoryT、SpanT、指针、引用变量(ref)的正确使用和相互转换 - Qiita https://qiita.com/Funny_Silkie.../items/d2f7ba641cbd27566c67 【日文】[C#] 使用 ASP.NET Core 和 W3C 跟踪上下文轻松记录日志 - 尼诺的花园。

26820
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    SpringBoot中的异常处理和参数校验

    兄弟们好,这次来跟老铁交流两个问题,异常和参数校验,在说参数校验之前我们先来说异常处理吧,因为后面参数的校验会牵扯到异常处理这块的内容。...我们模拟一个by zero的异常,然后再配置一个处理ArithmeticException异常的处理器,代码如下: @RestControllerAdvice public class GlobalException...除了使用这些已经存在的异常外,其实我们还可以自定义我们的异常,比如我们常用的用户未登录异常、参数错误异常等等。...既然我们知道了它会抛出异常,并且我们也知道是什么异常类型,那么久超级简单了,我们可以直接使用上面刚学的异常处理类来处理我们的异常。...-json"; } 最后的话 那么到这里,我们本篇文章就结束了,主要介绍了两部分内容,异常的处理和参数的校验。

    93530

    分享我的CleanArchitecture for Razor Page项目模板

    这个项目是参考和整合了jasontaylordev/CleanArchitecture 和 blazorhero/CleanArchitecture 代码基础上,重构出来的新的项目,这两个项目都是非常优秀和人气很旺的关于...CleanArchitecture的项目模板,我也fork了他们的项目并添加了一些自己的功能模块,我个人非常喜欢blazorhero/CleanArchitecture这个项目,前端使用的是微软的Blazor...我为什么要不断的升级和重构我个人的开发框架 首先我追求的是开发效率,开发速度一定要快,当然我个人做的项目都是小项目1-2月内完成的页面不超过50个的那种,所以我必须再1-2周内完成所有的原型开发(能运行增删改查操作的原型...第二考虑的就是编码的效率和感受,主要是减少拷贝复制的操作,最求极简的代码风格(CleanArchitecture就符合这一点,ABP就觉得太复杂了)不需要太多的分层和定义太多的接口,我喜欢编写那种非常流畅容易理解的代码...,写代码追求那种像海上钢琴师里那种弹钢琴的境界 第三就是前端UI必须漂亮符合主流的风格,但我本人对css和UI布局是真的不行,所以我只能找一个我觉得好看的UI还必须是一整套,所以我选择了SmartAdmin

    1K10

    CleanArchitecture for Razor Page开源项目分享

    代码基础上,重构出来的新的项目,这两个项目都是非常优秀和人气很旺的关于CleanArchitecture的项目模板,我也fork了他们的项目并添加了一些自己的功能模块,我个人非常喜欢blazorhero.../CleanArchitecture这个项目,前端使用的是微软的Blazor(webassembly)技术,对于.net开发人员可以很快开始工作,几乎不需要额外的学习,但在项目的进行中发现了一个致命的问题就是在...我为什么要不断的升级和重构我个人的开发框架 首先我追求的是开发效率,开发速度一定要快,当然我个人做的项目都是小项目1-2月内完成的页面不超过50个的那种,所以我必须再1-2周内完成所有的原型开发(能运行增删改查操作的原型...第二考虑的就是编码的效率和感受,主要是减少拷贝复制的操作,最求极简的代码风格(CleanArchitecture就符合这一点,ABP就觉得太复杂了)不需要太多的分层和定义太多的接口,我喜欢编写那种非常流畅容易理解的代码...,写代码追求那种像海上钢琴师里那种弹钢琴的境界 第三就是前端UI必须漂亮符合主流的风格,但我本人对css和UI布局是真的不行,所以我只能找一个我觉得好看的UI还必须是一整套,所以我选择了SmartAdmin

    81520

    使用Cookie和Token处理程序保护单页应用程序

    令牌处理程序模式通过将会话和 Cookie 的便利性与访问令牌的强度相结合,解决了多个 SPA 漏洞。...同时使用 Cookie 和 Token 最近为保护用户身份验证免受恶意行为者攻击而开发的一种保护 SPA 的方法是令牌处理程序模式,该模式将网站 Cookie 安全性和访问令牌合并。...通过实施将身份验证从浏览器中移除并利用使用同站点 Cookie 和令牌的 BFF(后端到前端)配置的令牌处理程序架构,组织能够从 SPA 的轻量级方面中获益,而不会牺牲安全性。...BFF 架构解决方案 令牌处理程序模式通过提供一种方法来利用网站和应用程序安全性的最佳方面,将会话和 Cookie 的便利性与访问令牌的强度相结合,从而解决了多个 SPA 漏洞。...但是,它可能是一个复杂的架构来实现。有 资源,包括设计文档,可提供深入的指导,帮助开发人员利用 SPA 安全性的这一突破。 令牌处理程序模式使组织能够自信地使用 SPA,而不会引入新的安全漏洞。

    33810

    在ASP.NET Core中使用MediatR实现通知系统

    MediatR 是一个流行的开源库,用于在.NET应用中实现中介者模式(Mediator Pattern)。它通过封装消息的发送与处理逻辑,提供了一种简洁优雅的组件间通信方式。...虽然常与CQRS(命令查询职责分离)架构结合使用,但其应用场景不仅限于此。开发者可通过创建简单的C#命令/查询类及对应的处理程序,利用MediatR将请求分发给相应处理逻辑。...此外,MediatR还支持实现通知系统。 本文将以用户注册系统为例,展示如何在ASP.NET Core中利用MediatR的通知功能实现事件驱动的解耦架构。...为不同操作创建处理程序 各服务独立订阅同一事件。...✅ 可扩展性:新增处理程序(如短信通知)无需修改现有代码。 ✅ 可测试性:各处理程序可单独测试。

    19010

    Python中函数的参数(参数的使用和作用、形参和实参)

    如果能养狗把需要计算的数字,在调用函数时传递到函数内部就可以了。 一、函数参数的使用 注意点: 1. 在函数名的后面的小括号内部填写参数 2....以上的num1和num2叫做参数,在调用函数的时候第一个数字30会传递地给参数num1第二个数字20会传递给参数num2,通过这种方式就可以把函数外部的数据传递给函数内部,num1和num2当做两个变量来使用...二、参数的作用 函数,把具有独特功能的代码块组织为一个小模块,在需要的时候调用。 函数的参数,增加函数的通用性,针对相同的数据处理逻辑,能够适应更多的数据。 1....在函数内部,把参数当做变量使用,进行需要的数据处理 2....函数调用时,按照函数定义的参数顺序,把希望在函数内部处理的数据,通过参数传递 三、形参和实参 形参:定义函数时,小括号中的参数,是用来接收参数用的,在函数内部作为变量使用 实参:调用函数时,小括号中的参数

    3.3K20

    qsort函数的使用和模拟实现排序

    本文介绍: 1.qsort函数的构成 2.qsort的使用 3.用qsort的实现原理模拟实现可排序所有类型数据的冒泡排序 自我介绍:一个脑子不好的大一学生,c语言接触还没到半年,若涉及到效率等问题,各位都可以在评论区提出见解...文章特点:会将重要步骤和易错点在代码中用注释标示(方便各位理解和定位) 1.qsort函数的构成 qsort是一个强大的函数,它可以比较任何类型的数据,整型已是so easy,它还可以比较浮点数,字符,...甚至是结构体,但是先别急,容我先讲讲它的构成再将其使用 由图可知,qsort函数的返回类型为int,第一个参数为void*,第二个和第三个参数为size_t,也就是unsigned int,第四个参数为函数指针...void*的原因与之前一样,它方便接受各种类型的数据 (4)_cdecl: 函数调用约定,这里就需要你自行了解啦,它在这里作用不大,我就不进行叙述啦 2.qsort函数的使用 (这里就主要介绍cmp比较函数的构成啦...,其他部分在后续代码中就能理解啦) cmp函数: 比较函数,我将对它分为自定义类型数据比较和自带类型分别进行介绍 我们要设计一个比较函数,先要搞清它的返回类型和参数,而这里在前面的qsort函数的介绍部分就可知

    25710

    Mock技术带来的优点

    所以编写测试代码的时候, 我们需要提供这些依赖. 而针对隔离测试, 并不应该使用生产时用的依赖项, 所以我们使用模拟版本的依赖项, 这些模拟版依赖项只能用于测试时, 它们会使隔离更加容易....减少开发/测试成本, 有时程序可能依赖一些云服务, 这些服务是按调用次数收费的, 那么就可以使用Mock版本来节省这方面的开资, 当然了最后还是需要使用真正的服务测试才行; 有时候组建依赖项太费劲了,...它可以使用很直接的方式模拟依赖项的行为....对于Stub 和 Mock ,可以看下面两张图例: Moq 官网: https://github.com/moq/moq4 Moq框架可以用来创建dummy, stub 和 mock....Moq使用一套API来创建stub和mock对象.

    4.3K30

    C++:List的使用和模拟实现

    博主觉得跟之前vector的基本上差不了多少,如果不会看文档用库里面的list的可以去看博主只管关于string和vector的使用。...C++:String类的使用-CSDN博客 C++:Vector的使用-CSDN博客 下面直接介绍List使用中的易错点 2.1 List的迭代器失效问题 我们之前学习vector的时候..._node; } }; 第一个模版参数是类型,第二个模版参数是引用,第三个模版参数是指针 Ref和Ptr是用来区分正常的迭代器和const修饰的迭代器,Ref是T&或者是const...所以此时有两个方案,第一个方案是我们要在第一个参数后面加u,但是这不符合我们的使用习惯,所以我们可以采用第二个方案,写个重载版本。...list模拟实现的全部代码 //c++喜欢ListNode驼峰法命名 为了和STL风格一致,我们也用小写 //但是STL版本和java喜欢小写带_ namespace cyx { //节点的封装

    21210

    使用 Moq 测试.NET Core - Why Moq?

    所以编写测试代码的时候, 我们需要提供这些依赖. 而针对隔离测试, 并不应该使用生产时用的依赖项, 所以我们使用模拟版本的依赖项, 这些模拟版依赖项只能用于测试时, 它们会使隔离更加容易. ?...减少开发/测试成本, 有时程序可能依赖一些云服务, 这些服务是按调用次数收费的, 那么就可以使用Mock版本来节省这方面的开资, 当然了最后还是需要使用真正的服务测试才行; 有时候组建依赖项太费劲了,...它可以使用很直接的方式模拟依赖项的行为....Moq 官网: https://github.com/moq/moq4 Moq框架可以用来创建dummy, stub 和 mock. 在本文里把这三个东西都叫做mock对象吧....Moq使用一套API来创建stub和mock对象.

    3.3K30

    MediatR: .NET 平台上的命令查询职责分离 (CQRS) 库

    简介 MediatR 是一个轻量级的库,用于实现应用程序中的中介者模式【实现命令查询职责分离 (CQRS) 模式和面向消息的架构】。...通过将请求(命令或查询)与处理程序解耦,简化了应用程序的逻辑分层和扩展。 主要特性 • 命令和查询模式:支持命令和查询的分离,使代码更具可读性和可维护性。...• 依赖注入:完全兼容依赖注入容器,易于集成到现有的 ASP.NET Core 或其他 .NET 应用程序中。 • 简单易用:API 设计简洁,易于上手和使用。...(cfg => { cfg.RegisterServicesFromAssembly(typeof(Program).Assembly); }); 使用 MediatR 提供了以下主要接口和类型...IRequest-命令和查询 1. 定义一个命令或查询类及其对应的处理程序。

    12800

    一个.NET开源、流行、使用简单的模拟库,助力简化单元测试!

    前言 模拟库在软件开发和测试过程中起着非常重要的作用,特别是在单元测试中。今天大姚给大家分享一个.NET开源、流行、使用简单的模拟库:Moq,助力简化单元测试!...Moq类库介绍 Moq是一个.NET开源、流行、使用简单的模拟库,充分利用了.NET 的 Linq 表达式树和 lambda 表达式。这使得 Moq 成为最具生产力、类型安全且支持重构的模拟库。...它不仅支持模拟接口,还支持模拟类。其 API 非常简单直观,不需要任何关于模拟概念的事先知识或经验。从而简化单元测试中的依赖管理和验证过程,提高代码的可测试性和可维护性。...创建控制台应用 首先我们创建一个名为:MoqExercise 的.NET 8控制台应用: 安装Moq NuGet 创建模拟对象 以下是一个简单的示例,展示如何使用 Moq 来快速创建 IUserInfo...; } 模拟抛出异常 在单元测试中使用 Moq 框架时,可以模拟接口的方法抛出异常。

    24000

    MediatR:从青铜到王者,解锁.NET消息处理终极奥义!

    今天,就让我们一起来修炼这本秘籍,掌握.NET 中的中介者模式精髓! MediatR 是一个简单的中介者模式实现,它通过解耦消息发送者和接收者来简化应用程序中的进程内通信。...创建第一个消息和处理器 让我们从一个简单的"Hello World"开始: // 定义消息 public class HelloWorldQuery:IRequest { publicstring...- 中间件式处理 ✅ 高级技巧 - 验证、事务等 2.MediatR 就像一把瑞士军刀,在.NET 应用程序中提供了灵活的消息传递机制。...2025 版.NET 修仙法器大全:从 Visual Studio 到 JetBrains,助你突破金丹期瓶颈 揭秘.NET 程序员的灵气运转之道:CLR 内功心法全解析 小测验: 1.MediatR...2.命令和查询在 MediatR 中有什么区别? 3.如何为所有请求添加统一的日志记录? 欢迎在评论区分享你的答案和修炼心得!

    12610

    python和tensorflow处理命令行参数的方法

    1.使用optparse模块Python 有两个内建的模块用于处理命令行参数:一个是 getopt,《Deep in python》一书中也有提到,只能简单处理 命令行参数;另一个是 optparse,...optpars是python中用来处理命令行参数的模块,可以自动生成程序的帮助信息,功能强大,易于使用,可以方便的生成标准的,符合Unix/Posix 规范的命令行说明。...Opencv_version;第一第二个参数可以单独使用,也可以同时使用,但必须保证有其中一个;从第三个参数开始是命名参数,是可选参数,常用的几个:type=表示输入命令行参数的值的类型,默认为string...可以看到参数已经改变,如果这样调用:python test.py则会执行程序时会自动调用程序中default中的参数。...解释和optpars中的参数类型类似是通过参数 “type=xxx” 定义的,tf中每个合法类型都有对应的 “DEFINE_xxx”函数。

    1.5K30
    领券