NET
文章平均质量分 63
hezudao25
这个作者很懒,什么都没留下…
展开
-
Aspose.Wrods For Net 按标签 替换HTML内容时 样式设置
Aspose.Wrods For Net 按标签 替换HTML内容时的样式设置原创 2022-03-21 17:25:17 · 585 阅读 · 0 评论 -
Asp.Net Core 密码加密方案
使用PBKDF2算法来创建哈希的方法。PBKDF2全称Password-Based Key Derivation Function,它的基本原理是通过一个伪随机函数(例如HMAC函数),把明文和一个盐值作为输入参数,然后重复进行运算,最终产生秘钥。如果重复的次数足够大,破解的成本将非常大。PBKDF2定义如下DK = PBKDF2(PRF, Password, Salt, c, dkLen)PRF 是一个伪随机函数,可以简单的理解为 Hash 函数。 Password 表示口令 。 Sal原创 2021-07-29 13:56:34 · 1831 阅读 · 0 评论 -
ASP.NET Core学习资源汇总
ASP.NET Core入门学习资源汇总篇幅比較長,分为七个部分。 (一)认识.NET Core (二)Vistual Studio安装、调试 (三)Asp.Net Core入门指南与学习路线 (四)入门级实战项目手册、官方教程 (五)Asp.Net Core视频学习资源 (六)博客教程 (七)部署与测试 (八)开源项目推荐 (一)认识.NET Core从2014年11月.NET Core 项目启动到2016年06月.N..转载 2021-07-09 21:25:28 · 1070 阅读 · 0 评论 -
谈谈Dynamic的DynamicJson
传统操作Json很多.NET开发程序员或多或少都会遇到操作Json字符串的情况,一般来说,我们都是先定义一个和Json格式相匹配的类,然后将json字符串反序列化成对象,这样便于我们编程使用,由于.NET是强类型语言,Json又是多变的,非常灵活的,导致服务器端定义的json序列化类越来越多,操作也及其不便。特别是对多层嵌套的json更是头疼。此次不再过多声明,.NET程序员用过都明白。简易操作JsonDynamicJson是专门为.NET程序员开发的Json操作库,其源码非常...原创 2021-02-20 16:25:42 · 634 阅读 · 0 评论 -
ASP.NET Core 监听SQL Server数据库的实时信息
1.开发环境:开发工具:Visual Studio 2019 数据库:SQL Server2012 开发环境:.Net Core 3.12.使用技术:Signalr:实现消息推送 SqlDependency:通过它的OnChangeEventHandler事件去监听数据库的波动【只针对SQL Serer】 Microsoft.EntityFrameworkCore:连接数据库3.业务逻辑(虽然最后没做成,但是这技术我还学会了)开发场景:客户需要每一个参加展会的人,签到时候,需要在展转载 2021-02-20 15:56:06 · 530 阅读 · 0 评论 -
C# 正则表达式
由于偶尔用正则表达式,一下子回想不起来,特意花点时间收集下。符号解释: \ 将下一个字符标记为一个特殊字符、或一个原义字符、或一个 向后引用、或一个八进制转义符。例如,’n’ 匹配字符 "n"。’\n’ 匹配一个换行符。序列 ’\\’ 匹配 "\" 而 "\(" 则匹配 "("。 ^ 匹配输入字符串的开始位置。如果设置了 RegExp 对象的 Multiline 属性,^ 也匹配 ’\n’ 或 ’\r’ 之后的位置。 $ 匹配输入字符串的结束位置。如果设置了RegEx原创 2020-09-27 15:54:45 · 161 阅读 · 0 评论 -
ASP.NET Core学习资源汇总
ASP.NET Core入门学习资源汇总篇幅比較長,分为七个部分。 (一)认识.NET Core (二)Vistual Studio安装、调试 (三)Asp.Net Core入门指南与学习路线 (四)入门级实战项目手册、官方教程 (五)Asp.Net Core视频学习资源 (六)博客教程 (七)部署与测试 (八)开源项目推荐 (一)认识.NET Core从2014年11月.NET Core 项目启动到2016年06月.NET转载 2020-08-07 16:05:06 · 648 阅读 · 0 评论 -
NPOI 复制 工作表
/// <summary> /// 复制表 /// </summary> /// <param name="wb"></param> /// <param name="fromSheet"></param> /// <param name="toSheet"></param> /// <param name="copyValueFlag">&l...原创 2020-06-15 15:46:06 · 833 阅读 · 0 评论 -
设计模式 -- 策略模式和简单工厂实现计算器
设计模式 -- 策略模式和简单工厂的结合#####1 策略模式(Strategy)介绍和优缺点#####2 策略模式和简单工厂的结合#####3 策略模式的应用设计模式:面向对象语言开发过程中,对各种问题和场景的解决方案的沉淀, 是解决问题的套路,提出场景--解决问题--总结沉淀--推广应用行为型设计模式:关注对象和行为的分离设计模式都是为了解决一类问题而存在的,往往在解决一类问题的同时会带来的新的问题,会有对应的解决方案。设计模式不是万能的程序设计:不关系功能性,关注的非功能性的要求,程.原创 2020-05-20 20:12:38 · 585 阅读 · 0 评论 -
漫话消息队列
当下成熟的消息队列产品非常多,各种丰富的特性让人眼花缭乱,难以抉择。穿透现象先看本质,消息队列其实就是一个第三方应用程序,管理着一块儿内存空间,能快速存取数据,具备先进先出特性。只是跟系统架构设计相结合,产生了神奇的特效,请看下图:基于消息队列的异步架构图消息队列的好处:1---流量削峰:高并发的核心问题就是请求集中在同一时间,服务器来不及处理,而有了消息队列,就可以将请求的数据打包放入,然后由后端处理器异步处理,降低高峰期的并发处理压力,用时间换空间2---高可用性:90.原创 2020-05-19 19:51:26 · 201 阅读 · 0 评论 -
六.RabbitMQ消息的持久化优先级
01 消息持久化其实在前面的文章中已经介绍了exchange和queue的持久化,把exchange和queue的durable属性设置为true,重启rabbitmq服务时(重启命令:rabbitmqctl stop_app ;rabbitmqctl start_app),exchange和queue也会恢复。我们需要注意的是:如果queue设置durable=true,rabbitmq服务重启后队列虽然会存在,但是队列内的消息会丢全部丢失。那么怎么实现消息的持久化呢?实现的方法很简单:将exch..原创 2020-05-19 19:41:20 · 240 阅读 · 0 评论 -
五.RabbitMQ生产者/消费者消息确认
01 为什么要消息确认在一些场合,如转账、付费时每一条消息都必须保证成功的被处理。AMQP是金融级的消息队列协议,有很高的可靠性,这里介绍在使用RabbitMQ时怎么保证消息被成功处理的。消息确认可以分为两种:一种是生产者发送消息到Broke时,Broker给生产者发送确认回执,用于告诉生产者消息已被成功发送到Broker;一种是消费者接收到Broker发送的消息时,消费者给Broker发送确认回执,用于通知消息已成功被消费者接收。下边分别介绍生产者端和消费者端的消息确认方法02生产者端消.原创 2020-05-10 10:57:22 · 3512 阅读 · 1 评论 -
四. RabbitMQ路由解析
什么是路由呢?就和你们家里的路由器是一个概念,路由器就是把网络信号做转发、那么RabbitMQ中的路由,就是把消息做转发;RabbitMQ一共提供了四种路由:ØDirect类型ØFanout类型ØTopic类型ØHeader类型01Direct类型的路由:上一篇文章中写的RabbitMQ的基本应用案例中使用的Exchange就是direct类型的,direct类型的exchange路由规则很简单:exchange在和queue进行binding时会设置ro...原创 2020-05-10 10:54:25 · 942 阅读 · 0 评论 -
三.RabbitMQ在C#程序中初步使用
RabbitMQ应用C#程序在前面给大家说到过消息队列其实就是一个或多个进程往队列里面去写消息,然后可以有一个或者多个进程在消息队列里面获取消息进行处理:如下图根据上图展示的,应该有一个消息写入队列的进程,然后有一个进程到队列里面去获取消息进行处理;RabbitMQ在应用在C#程序,其实RabbitMQ提供的有对应的客户端程序包;我这里先准备了两个AspNetCore的控...原创 2020-04-29 19:39:23 · 968 阅读 · 0 评论 -
二. RabbitMQ环境准备/环境搭建
安装ERLANG OTPRabbitMQ是Erlang语言开发的,要运行RabbitMQ,就必须提供能够运行RabbitMQ的环境,必须要安装Erlang,就好比想要养鱼,就必须得有水一样。第一步:下载ErlangOTP,晚上下载路径很多,我这里提供的是最新版本的下载路径,如图4操作。注意:选择和自己电脑匹配的系统位数,老师这里是64位操作系统。下载地址:https://ww...原创 2020-04-29 19:32:11 · 375 阅读 · 0 评论 -
多个Newtonsoft.Json引起的版本冲突
指向一个版本,通常是高向低 <runtime><assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <dependentAssembly> <assemblyIdentity name="Newtonsoft.Json" culture="neutral" p...原创 2020-04-27 09:32:40 · 1330 阅读 · 0 评论 -
.Net Core3.1 微服务架构技术栈
微服务这个概念早在2012年就提出来了,经过了这些年的发展,现在已经成为企业非常主流的架构选项了。微服务的前世今生与微服务架构相对的,叫单体架构。这是我们最熟悉的开发方式,就是一个项目搞定业务全过程,在同一个进程里面完成。随着业务发展,数据量和并发上去了,一般会选择右边的垂直拆分,拆分后的每个系统,依旧是单体架构的。垂直拆分后,子系统都能独立做集群,承载能力大...转载 2020-04-12 19:24:32 · 6232 阅读 · 1 评论 -
一 .初识消息队列/RabbitMQ详解
1. 什么是消息队列图1:消息队列图1就是一个消息队列的使用结构图,比方说买票系统需要生成订单,不是直接就去调用订单系统,而是通过消息队列,把生成订单的数据,写入消息队列中去,然后订单系统就可以到消息队列中去订阅获取数据,再生成订单;消息队列有个特点,先进先出,先存进去的就先被取出来,取出来以后,数据在队列中被删除,消息数据在消息队列中是持久化存储的;只要是没有被取出,就会一直存...转载 2020-04-12 19:00:49 · 234 阅读 · 0 评论 -
js + kindeditor 提交内容为空的解决办法
kindeditor4.0以上版本的解决方法。1. 直接用表单的提交按钮<inputtype=”submit”value=”提交”/>可以得到值。2. 通过js的 submit()提交则为空值,解决办法就是在初始化kindeditor时加入一行代码:afterBlur:function(){this.sync();}这行代码的意思就是在textarea失去焦点之...原创 2019-12-05 10:08:29 · 530 阅读 · 1 评论 -
.NET 添加/更新Cookie
public static void AddUserCookies(string key,string value, string cookiename, string domain)( I8 W3 {4 V% K2 X! Y( m{; m0 @0 [: C- y$ UHttpCookie cookie = System.Web.HttpContext.Current.Request.Co转载 2012-03-06 14:44:59 · 2411 阅读 · 0 评论 -
动态调用WebService的方法
/// /// 动态调用WebService /// /// WebService地址 /// 类名 /// 方法名(模块名) /// 参数列表 /// object public static object InvokeWebService(string url, string classname, string methodn原创 2015-08-13 13:49:47 · 468 阅读 · 0 评论 -
c# RegistryKey注册表操作
微软的帮助Registry..::.GetValue 方法,检索与指定的注册表项中的指定名称关联的值。如果在指定的项中未找到该名称,则返回您提供的默认值;或者,如果指定的项不存在,则返回 nullNothingnullptrnull 引用(在 Visual Basic 中为Nothing)。 Registry..::.SetValue 方法,设置指定的注册表项的指定名称转载 2014-10-17 11:09:41 · 4374 阅读 · 0 评论 -
C#获取 URL参数
假设当前页完整地址是:http://www.test.com/aaa/bbb.aspx?id=1&name=kelli"http://"是协议名"www.test.com"是域名"aaa"是站点名"bbb.aspx"是页面名(文件名)"id=5&name=kelli"是参数【1】获取 完整url (协议名+域名+站点名+文件名+参数)string url=Req原创 2014-11-03 10:06:45 · 716 阅读 · 0 评论 -
.NET中的静态与非静态的异同
静态类 vs 普通类静态类与普通类的区别有以下几点:1)静态类无法实例化而普通类可以;2)静态类只能从System.Object基类继承;普通可以继承其它任何非static和非sealed类,但也只能继承一个类;3)静态类不能继承接口;普通类可以继承多个接口;4)静态类只能包含静态成员;普通类可以包含静态和非静态成员;5)静态类不能作为字段,方法参数和局部变量使用;普通类可转载 2014-01-24 11:45:37 · 482 阅读 · 0 评论 -
解决ilasm.exe无法编译 IL代码一例
众所周知,ildasm.exe和ilasm.exe是破解DONET常用工具之一,但是有时候我们会发现有的程序可以用ildasm反编译,却无法用ilasm编译回去。其中部分是由于包含非托管代码而引起的,这种混合类的程序用ilasm是100%不会成功的,本文也不会讨论这种情况。或许更多的时候你会遇到这样的情况:<img title="名称: 1.JPG查看次数: 524文件大小: 42转载 2014-01-10 10:31:03 · 4093 阅读 · 0 评论 -
移除IIS默认的响应头
在IIS+ASP.NET的运行环境,默认情况下会输出以下的响应头(Response Headers):那如何移除这些响应头呢?下面我们来一个一个移除。1. 移除Server借助IIS URL Rewrite Module,添加如下的重写规则:rewrite> allowedServerVariables> add name="RE转载 2016-10-25 08:46:52 · 1008 阅读 · 0 评论 -
项目里不同版本之间调用DLL,引发的问题
如:Assembly 'SPPD.Backend.DataAccess.Test, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' is marked with the AllowPartiallyTrustedCallersAttribute, and uses the level 2 security transparency mo原创 2016-11-25 16:34:58 · 776 阅读 · 0 评论 -
c# 将IDataReader转换为DataTable
/// /// 将IDataReader转换为DataTable /// /// /// public static DataTable DataTableToIDataReader(IDataReader reader) { DataTable objDataTable = new DataTable("Table");转载 2017-06-30 10:51:06 · 5659 阅读 · 0 评论 -
动态调用WebService(C#)
通常我们在程序中需要调用WebService时,都是通过“添加Web引用”,让VS.NET环境来为我们生成服务代理,然后调用对应的Web服务。这样是使工作简单了,但是却和提供Web服务的URL、方法名、参数绑定在一起了,这是VS.NET自动为我们生成Web服务代理的限制。如果哪一天发布Web服务的URL改变了,则我们需要重新让VS.NET生成代理,并重新编译。在某些情况下,这可能是不能忍受的,...转载 2017-11-07 14:46:54 · 280 阅读 · 0 评论 -
IE11等新版本的浏览器更新 User-Agent 导致的 ASP.Net 网站无法写入Cookie 问题
一个项目里用到forms身份认证,近来突然在谷歌浏览器里以及相应的360等浏览器,不能保存COOKIE,试了很多办法,终于解决了,做个记录以备候查。web.config 里需要 增添machineKey, 如: <machineKey validationKey="88CB6CA6CF403C5FBB41C2F62BB7FCFCA05DE7BE" decryptionKey="B8A...原创 2018-09-25 17:41:57 · 484 阅读 · 0 评论 -
使用HtmlAgilityPack爬取网站信息并存储
前言:打算做一个药材价格查询的功能,但刚开始一点数据都没有靠自己找信息录入的话很麻烦的,所以只有先到其它网站抓取存到数据库再开始做这个了。HtmlAgilityPack在c#里应该很多人用吧,简单又强大。之前也用它做过几个爬取信息的小工具。不过很久了源代码都没有了,都忘了怎么用了,这次也是一点一点找资料慢慢做出来的!(不过最麻烦的是将数据存到mysql,.net数据库我一直用的都是mssq...转载 2018-11-22 10:03:45 · 234 阅读 · 0 评论 -
使用HttpWebRequest和HtmlAgilityPack抓取网页(无乱码)
public string HttpGet(string url) { string responsestr = ""; HttpWebRequest req = HttpWebRequest.Create(url) as HttpWebRequest; req.Accept = "*/*"; ...转载 2018-11-28 13:39:26 · 298 阅读 · 0 评论 -
URL太长导致参数被截断的问题
做Web开发时经常涉及到页面之间的转跳,页面之间的转跳就会涉及到页面之间参数的传递,通过URL传递参数是常用的方法之一,但是微软说:"Maximum URL length is 2,083 characters in Internet Explorer",也就是说URL是有长度限制的。 ASP.NET应用程序前台与后台的数据交换都是通过FORM表单来完成的,FORM表单提供了两种数据转载 2013-10-29 13:19:57 · 3961 阅读 · 0 评论 -
类似百度文库在线预览文档flash版(支持word、excel、ppt、pdf)
在网上搜索如何和将office文档的pdf文档转换为flash,实现在线预览,你会发现有好几种解决方案 a.使用flashpaper将需要的文档通过简单的设置转换为SWF格式的Flash,扩展阅读:http://baike.baidu.com/view/917746.htm,不过由于我的电脑室win7,而flashpaper又不支持win7,所以只好 放弃此种方案。转载 2013-10-28 13:58:18 · 2102 阅读 · 0 评论 -
在线预览文档html版
(1).将文档转换为html,只支持支持office文档 (2).将文档转换为flash,实现类似百度文库的效果,除支持office文档外还支持pdf (1) a.首先添加引用:using Microsoft.Office.Core;using Word = Microsoft.Office.Interop.Word; b.其次编写文档转换的方法: 1转载 2013-10-28 13:49:59 · 9800 阅读 · 0 评论 -
C# Web开发 标准读写Cookies的方法 支持跨二级域和虚拟目录
/// /// 添加/更新 Cookies /// /// /// /// /// /// public static void SetUserCookies(string _domain, string _cookiepath, string _key, string _cookiename, stri转载 2012-08-24 09:09:54 · 1090 阅读 · 0 评论 -
c# rar压缩解压缩
此程序利用 WinRAR 程序对文件进行压缩,命令行语法可参考WinRAR中文帮助。Code/// /// 利用 WinRAR 进行压缩 /// /// 将要被压缩的文件夹(绝对路径) /// 压缩后的 .rar 的存放目录(绝对路径) /// 压缩文件的名称(包括后缀) ///转载 2012-08-09 11:00:35 · 445 阅读 · 0 评论 -
千万级数据库查询+分页优化
思路:方法一:select top 5 *from dbo.CompanyNews where PKId > (select max(PKId) from CompanyNews WHERE pkid in(select top 5 PKId from dbo.CompanyNews order by PKId))order by pkid上面等价于= =方转载 2012-07-03 14:52:48 · 2117 阅读 · 1 评论 -
Asp.net"页面加载中"效果实现
在网上找了好多,实现方式大多是使用定时器个人觉得定时器会造成一定程度上的假象(如:定时器还没结束页面已经加载完毕,或定时器结束后页面还没加载完成)本方法利用的是javascript,先网页面里面写入一个层,显示加载框,然后等页面结束后在body的onload中写入事件,隐藏该对话框方法(我的系统是多个页面,所以写了一个公用的类common.cs):在转载 2012-05-30 17:00:47 · 1302 阅读 · 0 评论 -
SQL Server 索引结构及其使用
一、深入浅出理解索引结构 实际上,您可以把索引理解为一种特殊的目录。微软的SQL SERVER提供了两种索引:聚集索引(clustered index,也称聚类索引、簇集索引)和非聚集索引(nonclustered index,也称非聚类索引、非簇集索引)。下面,我们举例来说明一下聚集索引和非聚集索引的区别: 其实,我们的汉语字典的正文本身就是一个聚集索引。比如,我们要查“安”字转载 2012-04-23 11:07:44 · 283 阅读 · 0 评论