摘要:
1、控制器上[Route("[controller]/[action]")]2、强制要求控制器中不同的操作用不同的方法名3、把[HttpGet]、[HttpPost]、[HttpDelete]、[HttpPut]等添加到对应的操作方法上注意:如果控制器中存在一个没有添加[HttpGet]、[Http 阅读全文
摘要:
HTTP传递参数的三种方式1、URL:适合定位;长度有限2、QueryString:灵活;长度有限3、请求报文体:灵活;长度不限制;不支持GET、DELETE URL:资源定位QueryString:URL之外的额外数据请求报文体:供PUT、POST提供数据 阅读全文
摘要:
REST:按照HTTP的语义来使用HTTP协议1、URL用于资源的定位:/user/888、/user/888/orders2、HTTP谓词:GET、POST(新增)、PUT(整体更新)、DELETE、PATCH(局部更新)等3、什么是"幂等",举例?DELETE、PUT、GET是幂等的,POST不 阅读全文
摘要:
分页的实现1、Skip(3).Take(8)最好显示指定排序规则(Skip跳过几条数据,Take获取几条数据)2、需要知道满足条件的数据的总条数:用IQueryable的复用LongCount和Count3、页数:long pageCount = (long)Math.Ceiling(count * 阅读全文
摘要:
为什么需要外键属性1、EF Core会在数据表中建外键列2、如果需要获取外键列的值,就需要做关联查询,效率低3、需要一种不需要Join直接获取外键列的值的方式 设置外键属性1、在实体类中显示声明一个外键属性2、关系配置中通过HasForeignKey(c=>c.XXX)指定这个属性为外键3、除非必要 阅读全文
摘要:
一对一:关系配置EF Core中实体之间关系的配置的套路:HasXXX(...)WithXXX(...)有XXX、反之带有XXXXXX可选值One、Many 一对多:HasOne(...).WithMany(...)一对一:HasOne(...).WithOne(...)多对多:HasMany(.. 阅读全文
摘要:
方法1:标准日志class MyDbContext : DbContext{ public static readonly ILoggerFactory MyLoggerFactory = LoggerFactory.Create(builder=>{builder.AddConsole();}); 阅读全文
摘要:
1、根据数据库表来反向生成实体类2、Scaffold-DbContext " "DefaultConnection": "Server=LAPTOP-3HE8JVHO\\MSSQLSERVER02;Database=RazorStudentDb;Trusted_Connection=True;Mul 阅读全文
摘要:
1、使用迁移脚本,可以对当前连接的数据库执行编号更高的迁移,这个操作叫做“向上迁移(Up)”,也可以执行把数据库回退到旧的迁移,这个操作叫"向下迁移(Down)" 2、除非有特殊需要,否则不要删除Migratons文件下的代码 3、进一步分析Migrations下的代码。分析Up、Down等方法。查 阅读全文
摘要:
/// <summary> /// 向文本里面写入配置信息 /// </summary> public void WriteConfigToTxt(int times, int days, string delPath) { try { string user = Environment.GetFo 阅读全文