随笔分类 -  .NETCore

摘要:上一篇我们通过导出IIS Express的自签证书,供ASP.NET Core程序启用HTTPS。本篇我们讨论如何生成自签证书。自签证书的生成,有多种方式。比如OpenSSL或PowerShell都可以通过命令生成证书。对于.NET程序,也有System.Security.Cryptography. 阅读全文
posted @ 2023-05-07 18:04 楼上那个蜀黍 阅读(516) 评论(4) 推荐(0) 编辑
摘要:本质上我还是一个Windows App Developer,所以虽然会做一些ASP.NET Core的工作,但通常这些ASP.NET Core的程序会托管在Windows Service上,并且大部分时候跑在局域网环境。说实话传统行业的Win DEV对Web这一套其实不怎么精通,今天我们来看一下AS 阅读全文
posted @ 2023-02-12 20:15 楼上那个蜀黍 阅读(2036) 评论(0) 推荐(8) 编辑
摘要:除了广阔的互联网,这个世界上还存在很多运行在公司内网的Web Application。假设有团队A提供的网站A,现团队B需要将网站B与之集成。网站A已使用了自签的SSL证书。团队B希望能够导出该SSL证书并转换成PEM格式,供Nginx配置给网站B使用。接着假设上述假设成立,世界上就是有这些奇奇怪怪 阅读全文
posted @ 2023-02-05 11:14 楼上那个蜀黍 阅读(1288) 评论(0) 推荐(9) 编辑
摘要:Windows Runtime API是当初某软为了区别Win32 API,力挺UWP而创建的另一套Windows 10专用的API集合。后来因为一些原因,UWP没火。为了不埋没很有价值的Windows Runtime API,某软只好允许.NET Framework的程序调用Windows Run 阅读全文
posted @ 2022-10-23 17:01 楼上那个蜀黍 阅读(1814) 评论(2) 推荐(6) 编辑
摘要:很多小伙伴在升级到Visual Studio 2022后发现,如果我们去新建一个.NET 6的项目,和原先VS2019中一摸一样的写法,却会出现CS8618 Non-nullable property或者其他可能为null的警告。虽然不影响代码的编译和运行,却让人心里不踏实。这是因为VS2019除了 阅读全文
posted @ 2022-08-09 15:42 楼上那个蜀黍 阅读(8657) 评论(7) 推荐(9) 编辑
摘要:在上一篇《.NET 6学习笔记(2)——通过Worker Service创建Windows Service》中,我们讨论了.NET Core 3.1或更新版本如何创建Windows Service。本篇我们将在此基础上,托管ASP.NET Core程序并指定端口。首先让我们创建一个ASP.NET C 阅读全文
posted @ 2022-03-31 19:11 楼上那个蜀黍 阅读(1826) 评论(5) 推荐(1) 编辑
摘要:通过Visual Studio中的Windows Service模板,我么可以创建.NET Framework版本的Windows Service,网络上对此已有详细且丰富的各路教程。但在我们升级到.NET Core 3.1或.NET 6后(这里仅讨论两个LTS版本),情况发生了相当大的变化。我们需 阅读全文
posted @ 2022-03-20 14:28 楼上那个蜀黍 阅读(3796) 评论(1) 推荐(5) 编辑
摘要:会写这篇纯属机缘巧合,虽然一直以来认为对单一文件的读、写操作是不冲突,可并行的,但实际并未实践过。正好有个UWP的程序要并行读取由Desktop Extension创建的文本,需要有个原型程序来验证,那不妨点开最新的VS 2022,顺手试试新的语法糖。首先我们明确本篇对文件的操作均通过FileStr 阅读全文
posted @ 2022-02-25 17:18 楼上那个蜀黍 阅读(1908) 评论(1) 推荐(7) 编辑
摘要:随着Visual Studio 2019 16.10版本的正式发布,创建WinUI 3的APP对我们来说,已不存在任何的难度。本篇我们就试着来一探究竟,看看WinUI 3 APP到底是个啥玩意,能不能重振Windows桌面开发。首先让我们把Visual Studio更新到16.10版本,16.10版 阅读全文
posted @ 2021-06-15 15:40 楼上那个蜀黍 阅读(5497) 评论(6) 推荐(4) 编辑
摘要:2021年3月的时候,Win UI 3终于来到了第一个稳定的支持版本,可用于创建发布到Micosoft Store的应用。据某软的说法,这个叫WinUI 3 Project Reunion 0.5的版本,是可以被用于生产了,但按某软的尿性,一般1.1版本会比较靠谱……首先我们要梳理一下Win UI 阅读全文
posted @ 2021-05-06 18:20 楼上那个蜀黍 阅读(1676) 评论(5) 推荐(4) 编辑
摘要:实在是被某软忽悠瘸了,愤而写此一篇。希望能让同样需求的同学们少走弯路。某软在《在 Windows 服务中托管 ASP.NET Core》中,介绍了通过创建Worker Service工程,来将.NET Core和.NET 5的程序以Windows Service的形式运行。但是某软你得说明,托管AS 阅读全文
posted @ 2021-03-10 21:07 楼上那个蜀黍 阅读(944) 评论(2) 推荐(4) 编辑
摘要:上一篇我们梳理了CodeFist的一般流程,本篇我们讨论如何在一套代码中,支持SQL Server和SQLite的切换。同时从本篇开始,我们从.NET Core 3.1 迁移到.NET 5。相信.NET 到了5这个版本,所有人都不会再怀疑某软跨平台的决心。而且SQL Server也从2017版本开始 阅读全文
posted @ 2021-02-08 12:21 楼上那个蜀黍 阅读(1392) 评论(0) 推荐(1) 编辑
摘要:上篇我们介绍了怎么通过已有的SQLServer表来创建实体类,本篇我们改用Code First的方式,由C#代码书写的实体类来生成SQLServer表。并且通过简单的Console APP往SQLServer表写入数据。首先我们先创建3个空的Projects,其中EfCodeFirst是作为启动项的 阅读全文
posted @ 2021-01-16 21:35 楼上那个蜀黍 阅读(760) 评论(0) 推荐(1) 编辑
摘要:曾经我以为再也不会去弄啥Database First,然鹅我错了。这个世界上就是有啪啪打脸和真香的时候。当小伙伴拿着做好的DB表结构和SQL脚本递过来的时候,我知道我没法拒绝。望着他突起的肱二头肌和充满杀意的脸庞,我怎能忍心说,来来来,我们Code First一把……DB First嘛,首先我们要确 阅读全文
posted @ 2020-12-31 15:51 楼上那个蜀黍 阅读(1060) 评论(0) 推荐(0) 编辑
摘要:1.为什么不要给每个方法都写try catch 为每个方法都编写try catch是错误的做法,理由如下: a.重复嵌套的try catch是无用的,多余的。 这一点非常容易理解,下面的示例代码中,OutsideMethodA中的try catch是不起作用的。 class NestedTryCat 阅读全文
posted @ 2020-07-27 23:55 楼上那个蜀黍 阅读(1659) 评论(5) 推荐(8) 编辑
摘要:在前一篇《.NET Core学习笔记(5)——WebAPI从Server端push消息到Client》中,我们简单学习了.NET Core版本SignalR的使用。Sample工程里我们创建了一个Console的Client接受来自SignalR Hub推送的消息。在最近的工作中,我尝试在UWP的项 阅读全文
posted @ 2020-05-01 22:08 楼上那个蜀黍 阅读(647) 评论(0) 推荐(0) 编辑
摘要:标题起得有点厉害,汉字夹杂着E文,不符合教育部公布的“向社会推荐使用的外语词中文译名”规范。不过他管不着我。写本篇的起因,是重构一个现有的WinForms程序,将Server端的部分逻辑从raw socket通讯的方式,改为调用WebAPI。重构则是因为原先代码有严重的性能问题,而组里并没有能够写好 阅读全文
posted @ 2020-03-20 15:24 楼上那个蜀黍 阅读(2445) 评论(4) 推荐(2) 编辑
摘要:原则上我们应该避免编写混合同步和异步的代码,这其中最大的问题就是很容易出现死锁。让我们来看下面的例子: private void ButtonDelayBlock_Click(object sender, RoutedEventArgs e) { Delay100msAsync().Wait(); 阅读全文
posted @ 2020-02-06 15:46 楼上那个蜀黍 阅读(1224) 评论(0) 推荐(1) 编辑
摘要:在写了很多年.NET程序之后,年长的猿类在面对异步编程时,仍不时会犯下致命错误,乃至被拖出去杀了祭天。本篇就async/await中的Exception处理进行讨论,为种族的繁衍生息做出贡献……处理async/await中的Exception,最致命的莫过于想抓的Exception抓不到,程序崩的莫 阅读全文
posted @ 2020-01-15 15:20 楼上那个蜀黍 阅读(3974) 评论(9) 推荐(11) 编辑
摘要:自.NET Core 3.0开始,某软加入了对WPF的支持。同时对XAML Islands也做了进一步加强。在.NET Core 3.0之前,我们只能在WPF程序中,通过两种方式有限制地使用Standard UWP Control: 微软包装好的第一方控件,比如InkCanvas,InkToolba 阅读全文
posted @ 2019-12-23 17:48 楼上那个蜀黍 阅读(3155) 评论(9) 推荐(15) 编辑