<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Awzer_的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Awzer_</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Awzer_]]></copyright><item><title><![CDATA[生成10位全局唯一且顺序的纯数字编号]]></title><link>https://blog.youkuaiyun.com/Awzer_/article/details/156051142</link><guid>https://blog.youkuaiyun.com/Awzer_/article/details/156051142</guid><author>Awzer_</author><pubDate>Thu, 18 Dec 2025 12:05:27 +0800</pubDate><description><![CDATA[使用8位时间戳，最多支持约3.17年的唯一ID生成。- 通过锁和时间戳+计数器机制保证唯一性。- 不依赖数据库、Redis或第三方包。- ID基于时间戳，保证时间上的顺序。- 所有生成的ID都是10位纯数字。：最大100个/秒（2位计数器限制）- 使用锁保证并发安全。]]></description><category></category></item><item><title><![CDATA[菜单与角色权限管理系统文档]]></title><link>https://blog.youkuaiyun.com/Awzer_/article/details/153691825</link><guid>https://blog.youkuaiyun.com/Awzer_/article/details/153691825</guid><author>Awzer_</author><pubDate>Tue, 21 Oct 2025 16:06:24 +0800</pubDate><description><![CDATA[本系统是一个基于角色权限控制的菜单管理系统，实现了菜单管理、角色管理、权限分配等核心功能。系统采用树形结构组织菜单，支持细粒度的权限控制。]]></description><category></category></item><item><title><![CDATA[菜单与角色权限管理系统的设计与实现（递归/树）]]></title><link>https://blog.youkuaiyun.com/Awzer_/article/details/153690437</link><guid>https://blog.youkuaiyun.com/Awzer_/article/details/153690437</guid><author>Awzer_</author><pubDate>Tue, 21 Oct 2025 16:01:45 +0800</pubDate><description><![CDATA[菜单管理：支持菜单的增删改查，树形结构展示，父子级关联维护角色管理：角色的创建、编辑、删除，以及角色与菜单的关联授权系统采用 "角色 - 菜单" 的权限模型，即每个角色关联一组菜单 ID，用户通过所属角色获得对应的菜单访问权限。结构清晰：通过基础类消除 DTO 冗余，树形结构统一使用逻辑严谨：包含菜单父子级验证、循环引用检查、权限菜单补全等细节处理可扩展性：支持菜单隐藏、排序、纯目录等特性，可根据需求扩展更多字段（如权限标识）增加按钮级权限控制（在菜单基础上关联按钮权限）]]></description><category></category></item><item><title><![CDATA[ORM 延迟执行问题与解决方案]]></title><link>https://blog.youkuaiyun.com/Awzer_/article/details/148469713</link><guid>https://blog.youkuaiyun.com/Awzer_/article/details/148469713</guid><author>Awzer_</author><pubDate>Fri, 06 Jun 2025 10:38:08 +0800</pubDate><description><![CDATA[若 ORM 上下文在循环前被释放，所有查询都将失败。（纯 ORM 层行为）（查询命令，未执行）：确保上下文生命周期。：动态查询+立即执行。]]></description><category></category></item><item><title><![CDATA[.net6+sqlsuagr生成随机中奖名单]]></title><link>https://blog.youkuaiyun.com/Awzer_/article/details/148284875</link><guid>https://blog.youkuaiyun.com/Awzer_/article/details/148284875</guid><author>Awzer_</author><pubDate>Wed, 28 May 2025 15:33:25 +0800</pubDate><description><![CDATA[场景：后台系统需要一个点击生成中奖名单的功能，点击即可随机抽取符合中奖条件的用户，并随机发放奖品表中的奖品。中奖概率与用户参与游戏次数权重正相关。本文记录了一个中奖名单随机生成系统的实现，该系统能够根据用户答题情况，按照答题次数作为权重进行随机抽奖，并确保历史中奖用户不会重复中奖。系统主要包含候选用户筛选、权重随机算法实现、中奖记录生成与存储等核心功能。]]></description><category></category></item><item><title><![CDATA[LINQ 子查询使用笔记]]></title><link>https://blog.youkuaiyun.com/Awzer_/article/details/147929643</link><guid>https://blog.youkuaiyun.com/Awzer_/article/details/147929643</guid><author>Awzer_</author><pubDate>Tue, 13 May 2025 17:30:12 +0800</pubDate><description><![CDATA[不同ORM（如EF Core/SqlSugar）子查询语法可能不同，需参考文档调整。中嵌套子查询，动态计算关联数据，常用于统计、条件过滤等场景。若主查询返回大量数据，子查询可能导致性能问题，可改用。确保子查询简单高效，避免复杂计算。示例：统计有效订单数量。]]></description><category></category></item><item><title><![CDATA[小型抽奖活动设计笔记 ]]></title><link>https://blog.youkuaiyun.com/Awzer_/article/details/147926643</link><guid>https://blog.youkuaiyun.com/Awzer_/article/details/147926643</guid><author>Awzer_</author><pubDate>Tue, 13 May 2025 15:53:34 +0800</pubDate><description><![CDATA[设计一个支持多账号合并计算的抽奖系统，核心在于确保同一自然人的多次参与能合并计算权重，并保证抽奖的公平性和数据一致性。系统需通过手机号和身份证号识别同一自然人，合并其不同账号的参与次数作为权重。采用加权随机算法，确保参与次数越多中奖概率越高，并通过事务处理保证高并发下的数据一致性。技术实现包括数据分组策略、加权随机算法、事务处理设计及关键异常处理。架构优化建议包括数据层优化、业务逻辑解耦、安全防护和监控指标。典型问题排查指南帮助解决重复中奖、随机分布不均和高并发性能下降等问题。]]></description><category></category></item><item><title><![CDATA[C# 如何获取host以及是否是http]]></title><link>https://blog.youkuaiyun.com/Awzer_/article/details/147241233</link><guid>https://blog.youkuaiyun.com/Awzer_/article/details/147241233</guid><author>Awzer_</author><pubDate>Tue, 15 Apr 2025 10:10:24 +0800</pubDate><description><![CDATA[在 Controller 中。在页面(cstml)中。]]></description><category></category></item><item><title><![CDATA[.Net Core 关于多线程使用和闭包陷阱]]></title><link>https://blog.youkuaiyun.com/Awzer_/article/details/146224931</link><guid>https://blog.youkuaiyun.com/Awzer_/article/details/146224931</guid><author>Awzer_</author><pubDate>Thu, 13 Mar 2025 10:58:29 +0800</pubDate><description><![CDATA[原因是在for块中定义的int i会被当作外部变量来处理，我们在循环内部使用lambda的时候编译器会给我们生成一个类，比如这个代码如果是在Program中的main方法执行的时候这个类会在Program中生成，成为Program的一个内部类。当lambda表达式引用了一个局部变量时，为了保证这个变量的生命周期，这个局部变量会被编译器生成的这个类所捕捉，也就是说，这个局部变量的生命周期得到了提升，成为了一个类级别的字段了，并且这个字段值，会获取 for 后最新的值内容。]]></description><category></category></item><item><title><![CDATA[.Net Core 3.1/.Net 6 项目在 Linux 上运行的实践]]></title><link>https://blog.youkuaiyun.com/Awzer_/article/details/142960719</link><guid>https://blog.youkuaiyun.com/Awzer_/article/details/142960719</guid><author>Awzer_</author><pubDate>Tue, 15 Oct 2024 17:56:38 +0800</pubDate><description><![CDATA[DNF 包管理器克服了 YUM 包管理器的一些瓶颈，提升了包括用户体验，内存占用，依赖分析，运行速度等多方面的内容。新旧版本的 .Net Core 存储的位置会有区别，可使用软链接来进行关联旧的路径 sudo ln -s /usr/share/dotnet/dotnet /usr/bin/dotnet。工具（Linux文件传输工具），把项目文件，迁移到 Linux 中 目录暂且为 /home/demo/WorkingDirectory=/home/demo/        //项目路径。]]></description><category></category></item><item><title><![CDATA[MySQL 8.0.33安装遇到的问题]]></title><link>https://blog.youkuaiyun.com/Awzer_/article/details/142960554</link><guid>https://blog.youkuaiyun.com/Awzer_/article/details/142960554</guid><author>Awzer_</author><pubDate>Tue, 15 Oct 2024 17:53:37 +0800</pubDate><description><![CDATA[这时候需要输入安装MySQL的时候自动生成的一个临时密码 （在执行 mysqld –initialize 的命令时候，临时密码会生成在 database文件夹里面一个.err的文件）# 设置mysql数据库的数据的存放目录，并且不要手动创建database文件夹，让接下里的命令行进行自动生成，否则会安装失败。下载下来的文件其实是一个zip的压缩包，不像SQL Server那种一个安装程序，相对来说其实MySQL的安装过程更加快捷。# 服务端使用的字符集默认为8比特编码的latin1字符集。]]></description><category></category></item><item><title><![CDATA[Nginx在Linux上的安装与配置]]></title><link>https://blog.youkuaiyun.com/Awzer_/article/details/142960430</link><guid>https://blog.youkuaiyun.com/Awzer_/article/details/142960430</guid><author>Awzer_</author><pubDate>Tue, 15 Oct 2024 17:47:02 +0800</pubDate><description><![CDATA[如果出现nginx: [error] open() “/var/run/nginx.pid” failed (2: No such file or directory) 错误，执行下面命令后，在重新读取配置文件即可。//修改为项目的端口号。如果提示 No package nginx available，安装一个源即可。（配置文件一般在 /etc/nginx/nginx.conf）server_name  ip或域名;]]></description><category></category></item><item><title><![CDATA[Windows Server安装IIS并部署项目]]></title><link>https://blog.youkuaiyun.com/Awzer_/article/details/142959995</link><guid>https://blog.youkuaiyun.com/Awzer_/article/details/142959995</guid><author>Awzer_</author><pubDate>Tue, 15 Oct 2024 17:41:50 +0800</pubDate><description><![CDATA[若出现错误，可在项目目录下启动cmd 并输入dotnet执行项目，排除项目本身问题。在windows server中安装dotnet hosting3/6。项目没问题的情况下，运行安装（修复）几次dotnet hosting。若是3.版本的dotnet框架，需要加上xml文件。新建网站时配置或基本信息中配置，端口号为80。并将vs上发布后的扩展文件粘贴到该目录下。按照以下步骤安装iis并绑定网站。此路径为服务器本地的项目物理路径。端口（或手动添加所需端口）在服务器中创建项目文件夹。首先在服务器控制台添加。]]></description><category></category></item></channel></rss>