<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[oopts的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/oopts</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; oopts]]></copyright><item><title><![CDATA[SOLID学习笔记 - 里氏替换原则]]></title><link>https://blog.youkuaiyun.com/oopts/article/details/128609549</link><guid>https://blog.youkuaiyun.com/oopts/article/details/128609549</guid><author>oopts</author><pubDate>Wed, 18 May 2022 14:25:00 +0800</pubDate><description><![CDATA[六大设计原则

单一责任原则 (SRP)
开放封闭原则 (OCP)
里氏替换原则 (LSP)
接口分离原则 (ISP)
依赖倒置原则 (DIP)

　里氏替换原则：
　　　　“子类型必须可替代其基本类型”。换句话说，给定一个特定的基类，从它继承的任何类都可以替代基类。
　　　　错误示例：





class LSPDemo
{
    static void Main(string[] ar...]]></description><category></category></item><item><title><![CDATA[SOLID 学习笔记 - 单一职责]]></title><link>https://blog.youkuaiyun.com/oopts/article/details/128609557</link><guid>https://blog.youkuaiyun.com/oopts/article/details/128609557</guid><author>oopts</author><pubDate>Wed, 18 May 2022 11:29:00 +0800</pubDate><description><![CDATA[　　六大设计原则

单一责任原则 (SRP)
开放封闭原则 (OCP)
里氏替换原则 (LSP)
接口分离原则 (ISP)
依赖倒置原则 (DIP)

　单一责任原则：
　　　　一个类应该只做一件事，而且只做一件事。
　　　　错误示例：





public class CsvFileProcessor
{
    public void Process(string filename)
 ...]]></description><category></category></item><item><title><![CDATA[微服务概念]]></title><link>https://blog.youkuaiyun.com/oopts/article/details/128611609</link><guid>https://blog.youkuaiyun.com/oopts/article/details/128611609</guid><author>oopts</author><pubDate>Wed, 06 Apr 2022 16:14:00 +0800</pubDate><description><![CDATA[微服务的概念
重点就是单体应用要拆分，拆分成多个独立自治的的模块，
这些模块通过高效的Http API接口去做协同。
每一个模块从数据库到逻辑层到应用到前端，都能够做到完全的独立自治和解耦。

...]]></description><category></category></item><item><title><![CDATA[Docker 安装 MSSqlServer]]></title><link>https://blog.youkuaiyun.com/oopts/article/details/128609546</link><guid>https://blog.youkuaiyun.com/oopts/article/details/128609546</guid><author>oopts</author><pubDate>Thu, 31 Mar 2022 22:49:00 +0800</pubDate><description><![CDATA[今天在本地安装MSSQL因为各种原因安装失败，决定在Docker安装MSSQL，步骤如下
拉取镜像：

 docker pull zyuuzy/mssql2019:latest


　因为微软官方的镜像拉取一直超时，可能是没有kx上网？在DockerHub上找了个能用的镜像

拉取完毕执行运行命令。

docker run -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=A...]]></description><category></category></item><item><title><![CDATA[Oracle 语法汇总]]></title><link>https://blog.youkuaiyun.com/oopts/article/details/128613009</link><guid>https://blog.youkuaiyun.com/oopts/article/details/128613009</guid><author>oopts</author><pubDate>Thu, 31 Mar 2022 17:42:00 +0800</pubDate><description><![CDATA[1) 时间字符串处理： " || " 连接符，相当于SQLServer的 " + "
2) to_date()将字符串转换为时间格式

select to_date(TO_CHAR(SYSDATE-1,'YYYY-MM-DD')||' 20:30:00','yyyy-mm-dd HH24:mi:ss'), to_date(TO_CHAR(SYSDATE,'YYYY-MM-DD')|| ' ...]]></description><category></category></item><item><title><![CDATA[超全面常用的数据库优化方案]]></title><link>https://blog.youkuaiyun.com/oopts/article/details/128613933</link><guid>https://blog.youkuaiyun.com/oopts/article/details/128613933</guid><author>oopts</author><pubDate>Tue, 22 Mar 2022 10:07:00 +0800</pubDate><description><![CDATA[一、数据库设计优化篇
1.1 选取最合适的的字段属性
关系型数据库可以支持大数据量的存取，但是一般来说表越小，它执行的速度也就会越快。因此，在新建表的时候，在满足我们业务需求的基础上，尽可能的将字段的宽度设置的小一点。
例如，在定义邮政编码这个字段时，如果将其设置为CHAR(100),显然给数据库增加了不必要的空间，甚至使用VARCHAR这种类型也是多余的，因为CHAR(6)就可以很好的完成任务...]]></description><category></category></item><item><title><![CDATA[接口压力测试控制台程序]]></title><link>https://blog.youkuaiyun.com/oopts/article/details/128609538</link><guid>https://blog.youkuaiyun.com/oopts/article/details/128609538</guid><author>oopts</author><pubDate>Mon, 24 Jan 2022 10:25:00 +0800</pubDate><description><![CDATA[using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
...]]></description><category></category></item><item><title><![CDATA[进行SQL性能优化的常用方法]]></title><link>https://blog.youkuaiyun.com/oopts/article/details/128609541</link><guid>https://blog.youkuaiyun.com/oopts/article/details/128609541</guid><author>oopts</author><pubDate>Sun, 05 Sep 2021 21:37:00 +0800</pubDate><description><![CDATA[进行SQL性能优化的方法：


1. SQL语句不要写的太复杂。一个SQL语句要尽量简单，不要嵌套太多层。


2. 使用『临时表』缓存中间结果。简化SQL语句的重要方法就是采用临时表暂存中间结果，这样可以避免程序中多次扫描主表，也大大减少了阻塞，提高了并发性能。


3. 使用like的时候要注意是否会导致全表扫，有的时候会需要进行一些模糊查询例如：select id from table w...]]></description><category></category></item><item><title><![CDATA[面试必问的问题集]]></title><link>https://blog.youkuaiyun.com/oopts/article/details/128609534</link><guid>https://blog.youkuaiyun.com/oopts/article/details/128609534</guid><author>oopts</author><pubDate>Sun, 05 Sep 2021 21:11:00 +0800</pubDate><description><![CDATA[EF 中DBContext是线程安全的吗？
不是线程安全的，因为在一个同一时刻，一个上下文只能执行一个异步方法实体状态改变，
    对应一个上下文，不能跨上下文修改实体状态，也不能跨上下文应用实体状态
   
  什么是线程安全呢？
  线程安全，指某个函数、函数库在多线程环境中被调用时，能够正确地处理各个线程的局部变量，使程序功能正确完成


EF怎么做查询优化
1.  适时的使用AsN...]]></description><category></category></item><item><title><![CDATA[ABP 分布式事件总线]]></title><link>https://blog.youkuaiyun.com/oopts/article/details/128611594</link><guid>https://blog.youkuaiyun.com/oopts/article/details/128611594</guid><author>oopts</author><pubDate>Wed, 01 Sep 2021 11:29:00 +0800</pubDate><description><![CDATA[分布式事件总线
分布式事件总线系统允许发布和订阅跨应用/服务边界传输的事件. 你可以使用分布式事件总线在微服务或应用程序之间异步发送和接收消息.
提供程序
分布式事件总线系统提供了一个可以被任何提供程序实现的抽象. 有两种开箱即用的提供程序:

LocalDistributedEventBus 是默认实现,实现作为进程内工作的分布式事件总线. 是的!如果没有配置真正的分布式提供程序,默认实现的工...]]></description><category></category></item><item><title><![CDATA[EF Core左连接内连接]]></title><link>https://blog.youkuaiyun.com/oopts/article/details/128612165</link><guid>https://blog.youkuaiyun.com/oopts/article/details/128612165</guid><author>oopts</author><pubDate>Wed, 01 Sep 2021 11:22:00 +0800</pubDate><description><![CDATA[内连接查两张表
from oo in query  
join comany in _companyRepository.GetAll() on oo.OfflineOrder.CompanyId equals comany.Id 
where comany.IsFamous 
select oo;

Lamad内连接
_storeRepository.GetAllIncluding().Jo...]]></description><category></category></item><item><title><![CDATA[C# 基础面试问题]]></title><link>https://blog.youkuaiyun.com/oopts/article/details/111413512</link><guid>https://blog.youkuaiyun.com/oopts/article/details/111413512</guid><author>oopts</author><pubDate>Sat, 19 Dec 2020 14:12:00 +0800</pubDate><description><![CDATA[常问问题：



C#中值类型和引用类型分别有哪些？       值类型：int , float , double,bool 和 struct，引用类型 class和 string


C#中值类型和引用类型的区别         值类型是直接存储一个数值，而引用类型是存储对值的引用


谈谈你对EF的理解       ...]]></description><category></category></item><item><title><![CDATA[如何解决高并发]]></title><link>https://blog.youkuaiyun.com/oopts/article/details/111413513</link><guid>https://blog.youkuaiyun.com/oopts/article/details/111413513</guid><author>oopts</author><pubDate>Sat, 19 Dec 2020 14:08:00 +0800</pubDate><description><![CDATA[通过服务器处理高并发


调整服务器IIS设置




调整IIS 7应用程序池队列长度，由原来的默认1000改为65535。


调整IIS 7的appConcurrentRequestLimit设置


调整machine.config中的processModel&gt;requestQueueLimit的设置


修改注册表，调整IIS 7支持的同时TCPIP连接数




使...]]></description><category></category></item><item><title><![CDATA[公用方法]]></title><link>https://blog.youkuaiyun.com/oopts/article/details/107118935</link><guid>https://blog.youkuaiyun.com/oopts/article/details/107118935</guid><author>oopts</author><pubDate>Fri, 03 Jul 2020 16:50:00 +0800</pubDate><description><![CDATA[//文件转换为字节  public static byte[] File2Bytes(string path)
        {
            if (!System.IO.File.Exists(path))
            {
                return new byte[0];
            }

            Fil...]]></description><category></category></item><item><title><![CDATA[统计SQL]]></title><link>https://blog.youkuaiyun.com/oopts/article/details/107118934</link><guid>https://blog.youkuaiyun.com/oopts/article/details/107118934</guid><author>oopts</author><pubDate>Fri, 03 Jul 2020 11:35:00 +0800</pubDate><description><![CDATA[WITH(NOLOCK)用法select * from(
SELECT  
case sa.ActivityTimeType 
when 1 then sc.EndDate
else sa.EndDate
end as EndDate,
 sa.BeginDate,
si.Sort,
case si.SeckillItemsType
when 1 then ii.ItemStatus
...]]></description><category></category></item><item><title><![CDATA[WdatePicker插件时间控制]]></title><link>https://blog.youkuaiyun.com/oopts/article/details/103415818</link><guid>https://blog.youkuaiyun.com/oopts/article/details/103415818</guid><author>oopts</author><pubDate>Thu, 05 Dec 2019 11:34:00 +0800</pubDate><description><![CDATA[minDate：最小时间
maxDate：最大时间
&lt;input type="hidden" id="minDateVal" value="@ViewBag.beginDate" /&gt;                        &lt;input id="input_beginDate" type="text" value="@ViewBag.beginDate" c...]]></description><category></category></item><item><title><![CDATA[基于Quartz2.3.3的帮助类 QuartzHelper]]></title><link>https://blog.youkuaiyun.com/oopts/article/details/102881347</link><guid>https://blog.youkuaiyun.com/oopts/article/details/102881347</guid><author>oopts</author><pubDate>Sat, 02 Nov 2019 11:32:00 +0800</pubDate><description><![CDATA[using System;using System.Collections.Generic;using Quartz;using Quartz.Core;using Quartz.Impl;using Quartz.Impl.Triggers;using Kmmp.Core.Models;
namespace Kmmp.Core.Helper{    /// &lt;summary&g...]]></description><category></category></item><item><title><![CDATA[指定起始日期，构造时间数据]]></title><link>https://blog.youkuaiyun.com/oopts/article/details/100518045</link><guid>https://blog.youkuaiyun.com/oopts/article/details/100518045</guid><author>oopts</author><pubDate>Thu, 29 Aug 2019 15:08:00 +0800</pubDate><description><![CDATA[select Date,ISNULL(NewFans,0) NewFans,ISNULL(NewMembers,0) NewMembers, ISNULL(NewBinds,0) NewBinds,                         ISNULL(Recharges,0) Recharges,                         ISNULL(Consume,0...]]></description><category></category></item><item><title><![CDATA[取得某月的第一天]]></title><link>https://blog.youkuaiyun.com/oopts/article/details/97845831</link><guid>https://blog.youkuaiyun.com/oopts/article/details/97845831</guid><author>oopts</author><pubDate>Tue, 30 Jul 2019 14:16:00 +0800</pubDate><description><![CDATA[/// 取得某月的第一天        /// &lt;/summary&gt;        /// &lt;param name="datetime"&gt;要取得月份第一天的时间&lt;/param&gt;        /// &lt;returns&gt;&lt;/returns&gt;        private DateTime FirstDayOfMonth(DateTime d...]]></description><category></category></item><item><title><![CDATA[面试题合集]]></title><link>https://blog.youkuaiyun.com/oopts/article/details/89484742</link><guid>https://blog.youkuaiyun.com/oopts/article/details/89484742</guid><author>oopts</author><pubDate>Tue, 23 Apr 2019 21:22:00 +0800</pubDate><description><![CDATA[面试题合集
		
		
		
			

C#中值类型和引用类型分别有哪些？     值类型：int , float , double, bool 和 struct，引用类型 class和 string


C#中值类型和引用类型的区别          


谈谈你对EF的理解         ...]]></description><category></category></item></channel></rss>