搜索:盘古分词, 队列(分布式队列Redis)热词统计
webCache 解决并发缓存
分布式文件存储
Nginx反向代理服务器
----------------------------------------------------------------------------
接口层
数据层接口基接口T:class表示引用类型,new()表示可以实例化
where表明了对类型变量T的约束关系。where T:new()指明了创建T的实例时应该具有构造函数。一般情况下,无法创建一个泛型类型参数的实例。然而,new()约束改变了这种情况,要求类型参数必须提供一个无参数的构造函数。
这是类型参数约束,.NET支持的类型参数约束有以下五种: where T : struct | T必须是一个结构类型 where T : class | T必须是一个类(class)类型,不能是结构(structure)类型 where T : new() | T必须要有一个无参构造函数 where T : NameOfBaseClass | T必须继承名为NameOfBaseClass的类 where T : NameOfInterface | T必须实现名为NameOfInterface的接口
---------------------------------------------------------------------------------
在数据层添加EF引用(通过建立空的模型添加)
建立数据层基类