03 2022 档案
摘要:方式一:ToListAsync()、ToArrayAsync()。结果集不要太大方式二:await foreach(Book b in ctx.Books.AsAsyncEnumerable())不过,一般没必要这么做
阅读全文
摘要:对比1、DataReader:分批从数据库服务器读取数据。内存占用小、DB连接占用时间长2、DataTable:把所有数据都一次性从数据库服务器都加载到客户端内存中。内存占用大,节省DB连接 验证IQueryable用什么方式1、用insert into select 多插入一些数据,然后加上Del
阅读全文
摘要:1、IQueryable只是代表一个"可以放到数据库服务器去执行的查询",它没有立即执行,只是"可以被执行"而已 2、对于IQueryable接口调用非终结方法的时候不会执行查询,而调用终结方法的时候则会立即执行查询 3、终结方法:遍历、ToArray()、ToList()、Min()、Max()、
阅读全文
摘要:不同的WHERE方法1、对普通集合和DbSet调用的Where方法,虽然用起来一样,但是"转到定义"后看到的是不同的方法2、普通集合的版本(IEnumerable)是在内存中过滤(客户端评估),而IQueryable版本则是把查询操作翻译成SQL语句(服务器端评估)
阅读全文
摘要:async的方法会被C#编译器编译成一个类,会主要根据await调用进行切分为多个状态,对async方法的调用会被拆分为对MoveNext的调用。用await看似是"等待",经过编译后,其实没有"wait"
阅读全文
摘要:1)异步方法的返回值一般是Task<T>,T是真正的返回值类型Task<int>。惯例:异步方法名字以Async结尾2)即使方法没有返回值,也最好把返回值声明为非泛型的Task3)调用异步方法时,一般在方法前加上await,这样拿到的返回值就是泛型指定的T类型4)异步方法的"传染性":一个方法中如果
阅读全文
摘要:1、用来标识一个网络节点的互联网地址2、地址组成(点分十进制)—— 一共32个二进制位—— 转换为4个十进制数表示,以.隔开3、分为网络位和主机位,默认网络位用255表示,主机位用0表示 IP地址分类1、适用于一般计算机网络A类:1 ~ 127.主.主.主 ==》子网掩码 255.0.0.0B类:1
阅读全文