
ASP.NET
伊万洛夫拉裤兜
这个作者很懒,什么都没留下…
展开
-
c# 基于BouncyCastle.Crypto的国密sm2,sm4封装,与java版本兼容
c# 基于BouncyCastle.Crypto的国密sm2,sm4封装,与java版本兼容。原创 2022-08-19 14:42:03 · 6072 阅读 · 3 评论 -
http访问拦截器,使用正则匹配request请求是否存在xxs攻击
http访问拦截器,过滤xxs构建的请求public class HttpAccessInterceptModule : IHttpModule { private static List<string> _RegexWords; static HttpAccessInterceptModule() { _RegexWords = new List<string>() {原创 2022-01-27 15:39:59 · 2105 阅读 · 0 评论 -
Oracle.ManagedDataAccess 驱动类,使用参数化SQL查询,报错ORA-03115: 不支持的网络数据类型或表示法。
使用 Oracle.ManagedDataAccess.dll 驱动类,使用参数化SQL查询,需要转换Boolean类型,因为Oracle数据库中没有Boolean类型,都是使用Number(1),故使用以下代码构建参数将会报错ORA-03115: 不支持的网络数据类型或表示法。internal class Program { static void Main(string[] args) { var conn = new OracleCon原创 2021-12-08 13:45:47 · 1243 阅读 · 0 评论 -
java的SHA-256转c#的sha256实现
主要区别在于byte[]输出的十六进制文本值不同,java的byte是有符号的-128至127,c#的byte是无符号的0至255,故c#需要在格式化的是做一次转换,转化为sbye[]以兼容java的byte。c#的byte边界值为:0~255,java的byte边界值为:-128~127。 当byte >=0 && byte <127时, 两边是相等的。所以:java的byte转成C#可识别的byte时,如果byte<0, (byte+ 256) 即为C#可识别的b原创 2021-07-15 12:03:41 · 1448 阅读 · 5 评论 -
StackExchange.Redis获取数据超时解决方案
StackExchange.Redis 加载大批量hash数据超时报错:StackExchange.Redis.RedisTimeoutException: Timeout performing HGET Cache.IncomeShare.AccountData@Cache.IncomeShare.AccountData.InnerIncomeDistributionItem, inst: 1, mgr: ExecuteSelect, err: never, queue: 2, qu: 0, qs: 2原创 2021-07-07 09:36:44 · 2193 阅读 · 0 评论 -
AES256位对称加密算法,实现C#与Java代码互通
C# AES加密代码public static class AESCrypto { /// <summary> /// 字串加密 /// </summary> /// <param name="SourceStr">加密前字串</param> /// <param name="CryptoKey">密钥</param> ///.原创 2021-03-17 17:40:45 · 1023 阅读 · 0 评论 -
.net jwt帮助类
添加nuget-jwt引用:https://www.nuget.org/packages/JWT/public class TokenInfo { public TokenInfo() { iss = "COM.Web"; iat = (DateTime.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc)).TotalSeconds;原创 2021-03-17 17:12:20 · 297 阅读 · 0 评论 -
发送HttpWebRequest请求工具类
public static class PSWebUtils { private const string SIMPLECHECK_KEY_SN_PARAM_NAME = "__sk_keysn"; private const string SIMPLECHECK_KEY_ID_PARAM_NAME = "__sk_keyid"; private const string SIMPLECHECK_KEY_SN_PARAM_NAME_PS = "Key.原创 2021-03-05 15:29:11 · 367 阅读 · 0 评论 -
基于 SOAP消息协议的 HttpWebRequest 请求 WebService 服务接口
基于 SOAP消息协议的 HttpWebRequest 请求 WebService 服务接口private const string Request_UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.75 Safari/537.36";public static string QuerySoapWebService(string原创 2021-03-05 15:18:11 · 619 阅读 · 0 评论 -
c# MemoryCache 操作封装类
public sealed class MemoryCacheUtil { static readonly object _syn1 = new object(), _syn2 = new object(); /// <summary> /// 使用键和值将某个缓存项插入缓存中,并指定基于时间的过期详细信息 /// </summary> /// <param name="key"&...原创 2020-09-11 13:29:13 · 2454 阅读 · 0 评论 -
c#创建动态编译类,编译源码,并创建指定类
using Microsoft.CSharp;using System;using System.CodeDom;using System.CodeDom.Compiler;using System.Globalization;using System.IO;using System.Reflection;using System.Text;namespace PsReport.DynClass{ /// <summary> /// 动态编译工具 /// </su原创 2020-08-21 12:21:05 · 638 阅读 · 0 评论 -
asp.net mvc 全局异常过滤器
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Web.Mvc;using System.Web.Routing;using PS.Core.Commons;using PS.Web.Mvc.Extensions;namespace PS.Web.Mvc{ /// <summary> /// 全局异常,记录异常信息“Lo原创 2020-08-12 15:39:54 · 385 阅读 · 0 评论 -
asp.net mvc 过滤XSS跨站脚本攻击
asp.net mvc 过滤跨站点脚本攻击拦截器using System;using System.Collections.Generic;using System.Configuration;using System.Linq;using System.Text.RegularExpressions;using System.Web;namespace Org.Core.Commons{/// /// http访问拦截器模块/// 1.过滤危险关键词/// 2.增加安全Header原创 2020-08-12 15:19:34 · 1199 阅读 · 0 评论 -
c# .net3.5环境下队列等待写法
老项目环境为.net3.5,遇到数据统计情况,就想到用类似于4.0以上的task写法using (var mrEvent1 = new ManualResetEvent(false))using (var mrEvent2 = new ManualResetEvent(false))using (var mrEvent3 = new ManualResetEvent(false))using (var mrEvent4 = new ManualResetEvent(false)){ThreadP原创 2020-07-28 15:18:11 · 660 阅读 · 1 评论 -
c# IList.ToList()后更改元素值会不会影响原列表的值
class Program { static void Main(string[] args) { var data = new List<User>(); for (int i = 1; i <= 5; i++) { data.Add(new User { ID = $...原创 2020-07-28 14:38:17 · 1043 阅读 · 0 评论 -
C#开启新线程执行方法
1.创建新的线程并传入指定的参数Thread thread = new Thread(new ParameterizedThreadStart(RunRefreshProjectMoneyAndOtherMoney));object[] paramObj = { Token, source.KeyID };thread.Start(paramObj);2.执行方法接收线程参数v原创 2018-01-31 12:56:00 · 5160 阅读 · 0 评论 -
asp.net IBatisNet事务,支持事务嵌套
IBatisNet事务嵌套,主要用户多层级事务操作原创 2017-07-19 21:07:15 · 638 阅读 · 0 评论 -
asp.net ibaitsNet初始化SqlMap.config
ibaitsNet初始化sqlmap配置文件的orm关系转载 2017-07-19 21:14:33 · 260 阅读 · 0 评论