自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 资源 (1)
  • 收藏
  • 关注

原创 ASP NET如何返回401而非302

文章目录前言1.重定向后再返回4012.重定义CookieAuthenticationEvents类的重定向登录事件(推荐)前言ASP NET MVC项目在鉴权时, 对于未登录请求会触发challenge重定向至登录界面.然而, 在前后端分离项目中, 往往需要后端返回401而非302, 这个简单的功能实现起来却相当麻烦.因为ASP NET MVC项目默认使用的是一个叫CookieAuthentication的中间件来实现身份认证的功能的,该中间件中会将401响应码进行特殊处理,所以导致我们无法手动

2022-04-29 15:44:57 678

原创 EF Core并发冲突处理方式

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、并发冲突的处理方式1. 悲观并发(锁定)2. 乐观并发二、乐观并发的处理步骤1.在模型的属性上应用并发标记(不推荐)2.在模型中新增时间戳作为并发标记(推荐)前言介绍EF Core如何处理多个用户同时更新同一实体数据时出现的冲突。一、并发冲突的处理方式1. 悲观并发(锁定)在从数据库读取一行内容之前,请求锁定为只读或更新访问如果将一行锁定为更新访问,则其他用户无法将该行锁定为只读或更新访问,因为他们得到的是.

2022-04-25 15:13:12 2184 1

原创 Python TIPS

Python TIPS文章目录Python TIPS前言一、零散Tips二、Python操作数据库的方法1.常规方式2.使用ORM框架Sqlalchemy前言记忆力不行了, 每次都上网查资料。把常用的方法集中记录在这儿吧!一、零散Tips显示当前时间:print(f"{time.strftime('%H:%M:%S', time.localtime())}==正在查询第{i} - {i + 1000}条数据=========")读取excel和csv至dataframe:# e

2022-03-23 09:25:08 888

原创 Razor page-如何处理并发冲突

一. 什么是并发冲突?在Web应用中, 当一个用户的更改还未提交时,另一用户更新同一数据会产生并发冲突.二. 如何处理并发冲突处理并发冲突的方法主要有两大类:悲观并发预防并发冲突的一种方法是使用数据库锁定。 这称为悲观并发。 应用在读取要更新的数据库行之前,将请求锁定。 锁定某一行的更新访问权限之后,其他用户在第一个锁定释放之前无法锁定该行。缺点: 编程会比较复杂,并且随着用...

2020-04-02 19:35:04 291

原创 Razor Pages-通过EF Core实体模型(Model)操作数据库的要点

数据模型通过EF Core映射成数据库表, 使我们不必通过SQL语句既可操作数据库.模型中只有get访问器的字段在映射时不会创建数据库列实体的导航属性用于创建数据库的外键关于限制级联删除规则比如这样一个数据模型: 一所大学里系(Department)拥有一个系主任外键(Department.InstructorID), 系主任由一位讲师担任(Instructor.ID).如果将 Dep...

2020-03-29 22:04:19 583

原创 Razor Pages-如何防止过多发布攻击(Over Posting)

过多发布攻击(Over Posting):黑客可使用 Fiddler 等工具或通过编写某个 JavaScript 来提交表单中不存在的字段值, 达到修改数据库的目的。如何防范过多发布:在表单Post请求处理方法中使用TryUpdateModelAsync 来更新数据库:public async Task<IActionResult> OnPostAsync(){ ...

2020-03-28 11:23:37 393

原创 消息队列-RabbitMQ

消息持久化存储消息队列服务器停止会导致消息丢失, 为避免此类情况, 可使用消息持久化存储.由生产者和消费者共同在代码中声明:channel.queue_declare(queue='hello', durable=True)消息在发布时还需标记为持久化:channel.basic_publish(exchange='', routing_ke...

2020-03-08 12:31:19 246

原创 EF Core问题: 通过依赖注入的数据上下文执行异步SaveChangesAsync抛出异常

通过依赖注入的数据上下文执行异步SaveChangesAsync()时抛出异常代码如下: public class DBBookChaptersService : IBookChaptersService { private readonly BooksContext _booksContext; public DBBookChaptersService...

2020-03-07 11:30:22 3761 1

原创 EF Core 查询符合条件的最后一条记录-LastOrDefault异常问题

使用EF Core查询数据库中符合条件的最后一条记录, 首先想到了LINQ中的LastOrDefault, 代码如下:public async Task<Onu> Find(string sn) { //return await _onuContext.Onus.FirstOrDefaultAsync(o => o.Serialnum =...

2020-03-06 22:17:28 3050

原创 php学习笔记:文件目录操作

PHP之文件目录操作文件目录操作目录判断文件目录操作学习的内容太多,用文章记录知识点可以加深印象,也方便查询!目录判断is_dir — 判断给定文件名是否是一个目录is_dir ( string $filename ) : bool如果文件名存在,并且是个目录,返回 TRUE,否则返回FALSE。如果 filename 是一个相对路径,则按照当前工作目录检查其相对路径。...

2019-03-31 16:58:33 108

原创 PHP学习笔记:字符串

PHP之字符串字符串字符串查找字符串学习的内容太多,用文章记录知识点可以加深印象,也方便查询!字符串查找strpos — 查找字符串首次出现的位置strpos ( string $haystack , mixed $needle [, int $offset = 0 ] ) : int返回 needle 存在于 haystack 字符串起始的位置(独立于 offset)。同时注...

2019-03-31 16:48:01 73

原创 PHP学习笔记:基本语法

PHP之基本语法基本语法运算符基本语法学习的内容太多,用文章记录知识点可以加深印象,也方便查询!运算符&&与and、||与or的区别优先级不同:&&>||>赋值>and>or// 表达式 (false || true) 的结果被赋给 $e// 等同于:($e = (false || true))$e = false || true;// 常量 false ...

2019-03-31 16:37:36 136

原创 PHP学习笔记:数组

PHP之数组数组数组的定义数组的追加数组的迭代输出数组学习的内容太多,用文章记录知识点可以加深印象,也方便查询!数组的定义数组初始化<?php$array = array( "foo" => "bar", "bar" => "foo",);// 自 PHP 5.4 起$array = [ "foo" => "bar", "ba...

2019-03-30 18:39:12 131

转载 Markdown模板

自定义标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdow...

2019-03-30 18:07:12 521

原创 AJAX的应用

AJAX(Asynchronous JavaScript and XML, 异步JavaScript和XML)并不是一个技术,而是用来描述一种创建高度交互性web界面(类似桌面程序的界面)的方法。这个方法集成:JavaScript、XML,能及一种基于浏览器的管理异步通信的机制,可以完成异步请求并以同样方式返回一个响应。 实际流程如正在: JavaScript发起一个异步请...

2019-03-29 15:11:40 79

原创 算法2.4.24:查找链表二叉树节点

算法第四版习题2.4.24: 用堆有序的二叉树实现一个优先队列,但使用链表结构,每个结点需要三个链接:两个向下,一个向上。要求算法基本操作所需时间为对数级。二叉树如图:此算法实现的主要步骤:1.将新元素插入到最末结点之后,并上浮到合适位置2. 从二叉树顶端删除最大元素,并将最末结点放到顶端,并下沉顶结点。此算法的难点在于如何定位最末结点向后一位的结点沈星繁博客中提出的解决办法是:维护...

2019-03-28 15:40:31 628

原创 Python引入rpy2包用pyinstaller打包过程中遇到的问题

用pyinstaller打包1、pyinstall -F rpytest.py其中:-F 表示生成单个可执行文件-w 表示去掉控制台窗口,这在GUI界面时非常有用。不过如果是命令行程序的话那就把这个选项删除.2、生成的exe文件在dist目录。使用rpy2包1、打包后的exe执行失败,显示R_USER not defined需要设置环境变量:R_HOME : R安装目录R_...

2019-03-26 09:49:54 904 1

原创 R语言数据框实现分类汇总

我们经常需要数据的分类统计功能,如下图中方案执行情况的统计:然而R语言没有直接的数据框方法来统计每种情况出现的次数。可以用table方法先统计数据框的因子(factor)水平数(levels),然后再将其转为数据框即可。方法如下:#先取到“方案执行情况”的一维频数表> b<-table(a$方案执行情况) > b 方案未实施 没有方案 ...

2019-03-21 15:00:24 10291

Head First Java第二版(英文)

Head First Java第二版(英文)原版,无需解压密码,可对照中文版学习

2019-03-28

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除