<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[skvjw的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/skvjw</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; skvjw]]></copyright><item><title><![CDATA[解决vs拉取显示无法打开CA file]]></title><link>https://blog.youkuaiyun.com/skvjw/article/details/158616642</link><guid>https://blog.youkuaiyun.com/skvjw/article/details/158616642</guid><author>skvjw</author><pubDate>Tue, 03 Mar 2026 15:08:51 +0800</pubDate><description><![CDATA[git/': schannel: failed to open CA file 'd:/软件/visual studio/vs ide/common7/ide/commonextensions/microsoft/teamfoundation/team explorer/Git/mingw64/etc/ssl/certs/ca-bundle.crt': Unknown error 3 (0x00000003)在全局设置中找到加密网络提供程序。更改成openssl。]]></description><category></category></item><item><title><![CDATA[GitLab 配置 SSH 密钥完整教程]]></title><link>https://blog.youkuaiyun.com/skvjw/article/details/156272077</link><guid>https://blog.youkuaiyun.com/skvjw/article/details/156272077</guid><author>skvjw</author><pubDate>Thu, 25 Dec 2025 15:32:24 +0800</pubDate><description><![CDATA[在使用 GitLab 进行代码管理时，配置 SSH 密钥可以让我们免去每次推送/拉取代码时输入用户名和密码的麻烦。本文将详细介绍如何在 Windows 系统下配置 GitLab 的 SSH 密钥。步骤命令/操作1. 配置用户名2. 配置邮箱3. 生成密钥4. 添加公钥复制 id_rsa.pub 内容到 GitLab SSH Keys5. 拉取代码希望这篇教程对你有帮助！如有问题欢迎评论区交流~ 🎉。]]></description><category></category></item><item><title><![CDATA[office安装包大全office365 2013-2026下载包]]></title><link>https://blog.youkuaiyun.com/skvjw/article/details/156199919</link><guid>https://blog.youkuaiyun.com/skvjw/article/details/156199919</guid><author>skvjw</author><pubDate>Tue, 23 Dec 2025 16:38:34 +0800</pubDate><description><![CDATA[单组件（项目管理专业版）单组件（项目管理标准版）单组件（项目管理专业版）单组件（项目管理标准版）单组件（项目管理专业版）单组件（项目管理标准版）单组件（项目管理专业版）单组件（项目管理标准版）单组件（项目管理专业版）单组件（项目管理标准版）单组件（项目管理专业版）单组件（项目管理标准版）单组件（项目管理专业版）单组件（项目管理标准版）单组件（项目管理专业版）单组件（项目管理标准版）单组件（项目管理专业版）单组件（项目管理标准版）单组件（项目管理专业版）单组件（项目管理标准版）]]></description><category></category></item><item><title><![CDATA[Windows 应用程序的 UI 框架：WPF、WinUI 3 和 UWP的差异区别]]></title><link>https://blog.youkuaiyun.com/skvjw/article/details/149273594</link><guid>https://blog.youkuaiyun.com/skvjw/article/details/149273594</guid><author>skvjw</author><pubDate>Fri, 11 Jul 2025 14:35:00 +0800</pubDate><description><![CDATA[]]></description><category></category></item><item><title><![CDATA[C#变量作用域详解]]></title><link>https://blog.youkuaiyun.com/skvjw/article/details/144693307</link><guid>https://blog.youkuaiyun.com/skvjw/article/details/144693307</guid><author>skvjw</author><pubDate>Tue, 24 Dec 2024 14:13:36 +0800</pubDate><description><![CDATA[作用域限定在。]]></description><category></category></item><item><title><![CDATA[WPF依赖属性详解]]></title><link>https://blog.youkuaiyun.com/skvjw/article/details/144583987</link><guid>https://blog.youkuaiyun.com/skvjw/article/details/144583987</guid><author>skvjw</author><pubDate>Thu, 19 Dec 2024 13:36:26 +0800</pubDate><description><![CDATA[要定义依赖属性，需要做几个步骤：使用方法注册依赖属性。创建一个 C# 的包装器属性（例如Name），用于简化对外访问。例如，下面是如何在自定义控件中定义一个依赖属性：// 1. 注册依赖属性"My",              // 属性名称typeof(string),    // 属性类型typeof(MyControl), // 所属控件类型// 默认值​// 2. 创建包装器属性（通常用于访问依赖属性）依赖属性是 WPF 中的一种特殊的属性类型，它使用依赖属性系统。]]></description><category></category></item><item><title><![CDATA[跨线程、跨进程同步解决方案：Mutex 在 .NET 中的应用详解]]></title><link>https://blog.youkuaiyun.com/skvjw/article/details/144258403</link><guid>https://blog.youkuaiyun.com/skvjw/article/details/144258403</guid><author>skvjw</author><pubDate>Thu, 05 Dec 2024 11:22:57 +0800</pubDate><description><![CDATA[Mutex是 .NET 中用于线程同步和进程同步的一种工具。它的主要作用是确保在某一时刻只有一个线程或进程可以访问某个共享资源。下面是关于Mutex。]]></description><category></category></item><item><title><![CDATA[深入理解 Java 集合框架：HashSet、HashMap、Hashtable、LinkedHashSet、TreeSet 和 ConcurrentHashMap 的特点、应用场景与性能对比]]></title><link>https://blog.youkuaiyun.com/skvjw/article/details/144111815</link><guid>https://blog.youkuaiyun.com/skvjw/article/details/144111815</guid><author>skvjw</author><pubDate>Thu, 28 Nov 2024 15:01:28 +0800</pubDate><description><![CDATA[它已经被标记为不推荐使用的类，主要是由于线程安全的问题和与现代。：当你需要一个无重复元素的集合，并且要保持元素的插入顺序时，使用。会根据元素的自然顺序或者通过构造函数传入的比较器对元素进行排序。不允许重复：如果向集合中添加一个已经存在的元素，添加操作会失败。即元素的顺序是按照它们被插入的顺序排列的。是线程安全的，它的方法是同步的，适合多线程环境下使用。的一个子类，它是基于哈希表和双向链表实现的，提供了。它不允许有重复的元素，集合中的元素是唯一的。：当你需要快速查找元素，且不关心元素顺序时，]]></description><category></category></item><item><title><![CDATA[WPF实现边框颜色的渐变与交替效果：从渐变到红黄相间的实现]]></title><link>https://blog.youkuaiyun.com/skvjw/article/details/144111769</link><guid>https://blog.youkuaiyun.com/skvjw/article/details/144111769</guid><author>skvjw</author><pubDate>Thu, 28 Nov 2024 15:00:04 +0800</pubDate><description><![CDATA[这样就可以0-0.3 0.3-0.6 0.6-1.0 红黄相间了。和 EndPoint="1,0"是右上角，所以渐变是从左到右。border边框颜色可以渐变。如果不想渐变 想红色黄色相间。（即渐变开始的位置）。（渐变结束的位置）。]]></description><category></category></item><item><title><![CDATA[C# 中 DLL 和 类库的使用与区别]]></title><link>https://blog.youkuaiyun.com/skvjw/article/details/143914376</link><guid>https://blog.youkuaiyun.com/skvjw/article/details/143914376</guid><author>skvjw</author><pubDate>Wed, 20 Nov 2024 15:25:30 +0800</pubDate><description><![CDATA[是 Windows 操作系统中的一种可执行文件格式，用于存储共享代码和资源，供其他应用程序调用。]]></description><category></category></item><item><title><![CDATA[WPF 实现渐变文字效果]]></title><link>https://blog.youkuaiyun.com/skvjw/article/details/143204481</link><guid>https://blog.youkuaiyun.com/skvjw/article/details/143204481</guid><author>skvjw</author><pubDate>Thu, 24 Oct 2024 11:22:33 +0800</pubDate><description><![CDATA[就是第一个起始颜色的offet设置为0，最后一个结束颜色offset设置为！为确保颜色在整个文字区域内的正确呈现，建议在起点（Offset=0.0）和终点（Offset=1.0）处添加。在 0% 到 39% 的区域内，没有明确指定的颜色。：表示这个颜色在渐变路径上占据的位置，位于 72.6% 的位置。：表示这个颜色在渐变路径上占据的位置，位于 39% 的位置。从 72.6% 到 100% 的区域内，颜色保持为粉红色。，颜色的变化是沿着左上角到右下角的对角线方向进行的。当这样就是从0到1均匀的渐变四个颜色！]]></description><category></category></item><item><title><![CDATA[WPF 教程：使用 DataTrigger 实现动态元素控制，隐藏最后一项的 Separator]]></title><link>https://blog.youkuaiyun.com/skvjw/article/details/143051437</link><guid>https://blog.youkuaiyun.com/skvjw/article/details/143051437</guid><author>skvjw</author><pubDate>Fri, 18 Oct 2024 13:52:54 +0800</pubDate><description><![CDATA[我们实现的效果如下图所示：列表中的每个数据项下方都有一条  分隔线，用于分隔各个项。但最后一个数据项下方没有 ，这样看起来更整洁。（但是实现原理是每项数据项上方写一个Separator，通过隐藏 ”第一个 “数据项上方的Separator来实现的）我们首先定义一个 ，并为其设置数据源。在这个示例中，我们将使用  来提供一个简单的字符串数组作为数据源。
&lt;ItemsControl Name="itemsControl"&gt;
   &lt;ItemsControl.ItemsSource&gt;
 ]]></description><category></category></item><item><title><![CDATA[方法与函数的区别：多种编程语言的详细比较与实战]]></title><link>https://blog.youkuaiyun.com/skvjw/article/details/142828570</link><guid>https://blog.youkuaiyun.com/skvjw/article/details/142828570</guid><author>skvjw</author><pubDate>Thu, 10 Oct 2024 18:02:20 +0800</pubDate><description><![CDATA[和在编程中都是用于执行特定操作的一段代码。它们的功能本质上是一样的，但由于不同的语言和编程范式，术语上有所不同。]]></description><category></category></item><item><title><![CDATA[深入解析DOM与BOM：浏览器中的对象模型详解]]></title><link>https://blog.youkuaiyun.com/skvjw/article/details/142820127</link><guid>https://blog.youkuaiyun.com/skvjw/article/details/142820127</guid><author>skvjw</author><pubDate>Thu, 10 Oct 2024 14:04:39 +0800</pubDate><description><![CDATA[它将网页的内容（如 HTML 文档）表示为一个层次化的树结构，使得开发者可以使用 JavaScript 等编程语言来动态地访问和修改网页的内容和结构。是用于与浏览器窗口进行交互的对象模型，它提供了一系列与浏览器相关的 API，使开发者能够控制浏览器的属性和行为。它不仅限于操作网页的内容，还可以操作浏览器本身的一些功能，如窗口大小、地址栏信息、历史记录等。也不是协议，而是浏览器提供的一组 API，帮助开发者控制浏览器的行为，比如调整窗口大小、操作浏览器历史记录等。: 导航到浏览器历史的上一个页面。]]></description><category></category></item><item><title><![CDATA[C#顶级语句用法]]></title><link>https://blog.youkuaiyun.com/skvjw/article/details/142789124</link><guid>https://blog.youkuaiyun.com/skvjw/article/details/142789124</guid><author>skvjw</author><pubDate>Wed, 09 Oct 2024 15:57:47 +0800</pubDate><description><![CDATA[是指可以直接在文件的全局范围编写的语句，而不需要把代码包裹在类或方法中。这种特性自 C# 9.0 引入，目的是简化程序的启动代码，尤其是对于简单的控制台应用程序。这意味着你可以直接写逻辑代码，而不需要显式地定义。方法来封装这些顶级语句。这对于快速编写简单代码或者小项目时非常方便。可以看到，顶级语句可以直接放在文件中，而编译器会自动生成一个。举个例子，以下代码在 C# 9.0 之前需要放在一个类和。]]></description><category></category></item><item><title><![CDATA[C#中的修饰符，类和方法行为修饰符， 线程和方法修饰符，其他修饰符]]></title><link>https://blog.youkuaiyun.com/skvjw/article/details/142789051</link><guid>https://blog.youkuaiyun.com/skvjw/article/details/142789051</guid><author>skvjw</author><pubDate>Wed, 09 Oct 2024 15:56:28 +0800</pubDate><description><![CDATA[用于定义抽象类或抽象方法，表示该类不能被实例化，或者该方法必须在子类中实现。抽象方法不包含方法体。]]></description><category></category></item><item><title><![CDATA[深入了解 .NET 8.0：新特性与开发最佳实践（微服务架构实践、Dapper 和 NLog 优化 .NET 应用程序的数据库操作与日志管理、控制反转与依赖注入：提升 .NET 应用程序的可维护性）]]></title><link>https://blog.youkuaiyun.com/skvjw/article/details/142495114</link><guid>https://blog.youkuaiyun.com/skvjw/article/details/142495114</guid><author>skvjw</author><pubDate>Tue, 24 Sep 2024 17:17:06 +0800</pubDate><description><![CDATA[HTTP：适合需要实时交互的场景，通过 RESTful API 或 gRPC 进行服务调用。消息队列/Kafka：适合异步处理的场景，服务通过发布/订阅模型进行通信，解耦服务之间的依赖。Entity Framework Core（EF Core）是 Microsoft 开发的一个轻量级、跨平台的对象关系映射（ORM）框架，旨在简化 .NET 应用程序与数据库之间的交互。EF Core 允许开发者使用 .NET 对象操作数据库，而无需直接处理 SQL 语句。跨平台支持。]]></description><category></category></item><item><title><![CDATA[全面指南：使用JMeter进行性能压测与性能优化（中间件压测、数据库压测、分布式集群压测、调优）]]></title><link>https://blog.youkuaiyun.com/skvjw/article/details/142439770</link><guid>https://blog.youkuaiyun.com/skvjw/article/details/142439770</guid><author>skvjw</author><pubDate>Sun, 22 Sep 2024 17:04:05 +0800</pubDate><description><![CDATA[缓存是一种存储机制，用于临时存储经常访问的数据，以减少数据获取的延迟和降低数据库或后端服务的负载。缓存可以存在于客户端（如浏览器缓存）、服务器端（如内存缓存）或分布式缓存系统中。]]></description><category></category></item><item><title><![CDATA[创建github仓库报错422 Unprocessable Entity - Repository creation failed. [Repository； description]custom:]]></title><link>https://blog.youkuaiyun.com/skvjw/article/details/141869644</link><guid>https://blog.youkuaiyun.com/skvjw/article/details/141869644</guid><author>skvjw</author><pubDate>Tue, 03 Sep 2024 19:22:21 +0800</pubDate><description><![CDATA[这个错误信息表明你在创建 GitHub 仓库时，描述字段中包含了控制字符（例如非打印字符、换行符、回车符等），这些字符是不能被 GitHub 接受的。为了解决这个问题，请确保在描述字段中只使用标准的可打印字符，并去除任何可能的控制字符。]]></description><category></category></item><item><title><![CDATA[解决Git连接github失败Failed to connect to github.com port 443 after 21090 ms: Couldn‘t connect to server ‍]]></title><link>https://blog.youkuaiyun.com/skvjw/article/details/141827834</link><guid>https://blog.youkuaiyun.com/skvjw/article/details/141827834</guid><author>skvjw</author><pubDate>Mon, 02 Sep 2024 19:26:49 +0800</pubDate><description><![CDATA[git config --global https.proxy 127.0.0.1:<你的端口号>git config --global http.proxy 127.0.0.1:<你的端口号>: 打开“设置 -> 网络和Internet -> 代理”，记录下当前的端口号。最后一步，关闭Pycharm重新打开 就可以了。检查输出，确认代理设置已正确配置。在打开VPN的前提下去查看端口，我的端口号是10809，所以就是。接下来，在Git命令行种输入。我是因为连接VPN导致的。]]></description><category></category></item></channel></rss>