C#
文章平均质量分 61
最数据
互联网科技博主 | 独立开发者 | ZuiData
展开
-
C# 二进制与Stream转换
【代码】C# 二进制与Stream转换。转载 2023-06-14 15:42:44 · 852 阅读 · 0 评论 -
c#.Net MVC服务端下载文件、限制下载速度、大文件下载、对性能的影响、对大文件的支持、对断点续传和多线程下载的支持
asp.net里提供了多种方式,从服务器端向客户端写文件流,实现客户端下载文件。这种技术在做防下载系统时比较有用处。其中WriteFilet和BinaryWrite出现得比较早,对文件流的输出可以启动作用,但由于都是将整个文件读到内存后再往客户端写,因此会占用大量的内存资源,特别是要下载的文件比较大时,影响asp.net应用的稳定运行。转载 2022-11-24 15:48:41 · 1897 阅读 · 0 评论 -
c#.Net MVC服务端下载文件、限制下载速度、大文件下载、对性能的影响、对大文件的支持、对断点续传和多线程下载的支持
其实BinaryWrite和WriteFile之所以会影响性能,是因为将整个文件读到内存后再往客户端写,那么我们可以控制他的输出方式,一次只读一块内容到内存,再往客户端写,这些就可以自定义下载的和个细节了。其中WriteFilet和BinaryWrite出现得比较早,对文件流的输出可以启动作用,但由于都是将整个文件读到内存后再往客户端写,因此会占用大量的内存资源,特别是要下载的文件比较大时,影响asp.net应用的稳定运行。上的不同位置,还可以是一个图片,一个电子邮件地址,一个文件,甚至是一个应用程序。转载 2022-11-24 15:45:28 · 704 阅读 · 0 评论 -
c# 远程网络唤醒电脑(电脑远程开机+内网MAC和IP扫描)(附带源码+主板和Windows开启详细说明+外网远程唤醒方案)
1、人在公司坐,昨晚写的文档放在家中电脑忘记Copy了,想要访问家中电脑拿到文档。2、家中或公司中局域网内有某台电脑(或服务器)要开机,或者批量一键打开局域网内某些电脑。原创 2022-10-19 10:57:24 · 17674 阅读 · 9 评论 -
ASP.NET Core 各版本 中间件或过滤器中获取Post参数方法
2、当在动作过滤器(ActionFilter)或者需要多次读取 request.body 的时候,.net core 可以通过调用request.EnableRewind()实现,可以重置读取位置 ,但是在过滤器中使用此方法时出现异常,request.body的长度总是为0,说明在请求到达过滤器时Steam已经被读取了。1、权限(AuthorizationFilters)验证器中读取并只读取有一次请求串的方法。项目中,框架为.NET5,启动倒带方式,为。3、在任意想要读取的位置重复读取。原创 2022-09-09 09:06:21 · 4638 阅读 · 0 评论 -
C#程序检测指定计算机端口是否打开
C/S架构的程序,运行过程中需要调用其它系统提供的WebService接口。但是在个别用户电脑上运行时就会报无法访问网站的错误。 如果人去检测错误,通常先看网络通不通,然后再检查是否能正常访问WebService(可以在IE上输入WebService地址,检查是否能正常访问,如下图示例所示) 如果IE无法显示上图所示的WebService信息,一般就是用户无法访问服务器或者是服务器端口的访问权限没有开。可以在用户计算机中用telnet命令检查是否能正常访问服务器端口,如下所示。如果能正.转载 2022-01-13 17:51:15 · 2848 阅读 · 0 评论 -
c# WebApi POST请求同时包含数据及其文件
原因:创建.net WebApi的接口API。IIS作为服务端。安卓作为客户端发送json文件及其文件。 Android端使用xUtils3.0实现文件上传 java代码://要传递给服务器的json格式参数JSONObject json = new JSONObject(); try { json.put("devId", id); json.put("devName", devName); ...转载 2021-06-17 10:09:30 · 1715 阅读 · 0 评论 -
如何用C#写一个疫情QQ机器人
武汉疫情牵动着全国人民的心,各大网站纷纷制作了实时疫情播报网站,来让大家能及时地了解到疫情的最新进展。腾讯:https://news.qq.com/zt2020/page/feiyan.htm丁香园:https://ncov.dxy.cn/ncovh5/view/pneumonia然而对一些老年人或者其他群体来说,要让他们上网查看疫情仍然比较困难或者不方便。本文描述了怎么样从零开始制作一个能实时播报疫情的QQ机器人,这是最后的效果图:用以简化疫情信息的获取途径,传播正能量的同时学习.N.转载 2021-06-09 15:00:54 · 592 阅读 · 1 评论 -
c# .net 获取HTML meta标记中的内容
public class HtmlHelper { /// <summary> /// 使用举例: /// 获取关键词 GetSingleTagValueByAttr(data, "meta", "name", "Keywords"); data是HTML源代码 /// 获取描述GetSingleTagValueByAttr(data, "meta", "name", "Discription"); ..原创 2021-04-15 16:54:12 · 531 阅读 · 0 评论 -
.Net Core 雪花算法(SnowFlake)
概述分布式系统中,有一些需要使用全局唯一ID的场景,这种时候为了防止ID冲突可以使用36位的UUID,但是UUID有一些缺点,首先他相对比较长,另外UUID一般是无序的。有些时候我们希望能使用一种简单一些的ID,并且希望ID能够按照时间有序生成。而twitter的snowflake解决了这种需求,最初Twitter把存储系统从MySQL迁移到Cassandra,因为Cassandra没有顺序ID生成机制,所以开发了这样一套全局唯一ID生成服务。雪花算法的原始版本是Scala版,用于生成分布式ID..转载 2021-03-01 10:27:30 · 5304 阅读 · 0 评论 -
C# WinForm窗体程序、如何实现像QQ一样的热键
using System;using System.Collections.Generic;using System.Runtime.InteropServices;using System.Windows.Forms;namespace KoalaStudio.BookshopManager{ class HotKey { //如果函数执行成功,返回值不为0。 //如果函数执行失败,返回值为0。要得到扩展错误信息,调用GetLastError。.转载 2021-02-01 18:46:13 · 275 阅读 · 0 评论 -
C# 3Des两种加密方式 (对应java中的desede/CBC/PKCS5Padding加密)
1、3Des两种加密方式 //3DES的cbc加密[24位密钥对应192位加密] public static string TripleDesEncryptorCBC(string text, string key, string iv) { var tripleDESCipher = new TripleDESCryptoServiceProvider(); tripleDESCipher.Mode = Ci.转载 2021-01-08 14:01:07 · 1694 阅读 · 0 评论 -
IIS 7 应用程序池自动回收关闭的解决方案
如果你正在做ASP.NET,那肯定会用到IIS如果你想在ASP.NET Application中加入某个定时任务,那想必一定是用一个线程在不停地做定时计算那假设我们在自己的ASP.NET应用程序中加入了Quartz.NET框架,并且配置等等都OK了。这个站点访问量很少,现在只有几个人上班的时候才会使用,结果第二天过来一看,后台调度的线程和计算任务都停止了,如果你抓取了Application_End事件,会发现这个事件居然被调用了。那一定是IIS的应用程序池回收的机制在作怪了。因为IIS.转载 2020-12-14 16:28:37 · 1158 阅读 · 0 评论 -
发现一个免费的获取ip地址,判断地区和经纬度的api接口
发现一个免费的获取ip地址,判断地区和经纬度的api接口 接口地址:https://887d.com/api/getip支持IPv4与IPv6接口:https://887d.com/api/getip?ip=ip地址或local获取本地数据 返回结果:json格式,包含状态,IP,经度、纬度和地址。{“status”:“success”}表示正确 如果ip=local获取本地IP地址。 使用权限:该接口完全免费{“status”:“success”,“ip”:“183.145.63.237转载 2020-11-26 00:10:01 · 2344 阅读 · 1 评论 -
c# 无损高质量压缩图片代码
最近,项目上涉及到了图像压缩,发现原有的图像压缩功能,虽然保证了图像的大小300K以内,但是压缩后的图像看的不在清晰,并且,限定了图片的Height或者是Width。在CSDN上看到了一个压缩算法:http://blog.csdn.net/qq_16542775/article/details/51792149进过测试这个算法,发现,将原始图像的大小进行对半处理,然后迭代跳转压缩质量参数,可以得到不错的效果。修改后的算法如下:/// <summary>/// 无损压缩图片/转载 2020-10-30 16:53:23 · 589 阅读 · 0 评论 -
小程序获取用户手机号和用户openid和昵称服务器端代码(C#)
一、注意事项(先了解微信小程序的规则,知己知彼,才能解决问题)1、微信小程序获取用户手机号,每次都会弹窗询问2、获取用户信息(包括昵称、性别、城市、openid等),只弹窗一次 (根据手机号做授权验证用不到这里)3、微信小程序可以利用缓存,但是有时间限制4、获取手机号和openid—>是需要到自己服务器后台解密—>解密需要用到session_key—>session_key需要微信login接口(从前端)获取code然后传到后台服务器调用微信接口获取5、通过自己服务器后转载 2020-08-18 16:20:50 · 2253 阅读 · 0 评论 -
C#使用Process类杀死进程,执行命令等
c#之process类相关整理一、根据进程名获取进程的用户名?需要添加对 System.Management.dll 的引用using System.Diagnostics;using System.Management;static void Main(string[] args){foreach (Process p in Process.GetProcesses()){Console.Write(p.ProcessName);Console.Write("----")转载 2020-07-31 15:24:04 · 723 阅读 · 0 评论 -
使用Marshal.Copy把Txt行数据转为Struct类型值
添加重要的命名空间:using System.Runtime.InteropServices;先建立结构相同(char长度相同)的Struct类型用于转换:[StructLayout(LayoutKind.Sequential, Pack = 1)] public struct Employee { [MarshalAs(UnmanagedType.ByValArray, SizeConst = 6)] public char[] Empl转载 2020-05-31 14:51:00 · 275 阅读 · 0 评论 -
HttpWebResponse请求状态代码
通过WebRequest创建一个请求后,你可以通过请求来获取HttpWebResponse。通过HttpWebResponse.StatusCode来判断当前错误,也可以得到一些精确的消息。代码详细列表: 成员名称 说明 Continue 等效于HTTP状态100。Continue指示客户端可能继续其请求...转载 2020-04-17 17:04:39 · 273 阅读 · 0 评论 -
.net core2.0获取host的方法
Example there's an given url:http://localhost:4800/account/login获取整个url地址:在页面(cstml)中Microsoft.AspNetCore.Http.Extensions.UriHelper.GetDisplayUrl(Context.Request);在 Controller 中Microsoft.A...转载 2020-03-24 10:05:37 · 3593 阅读 · 0 评论 -
C# 字符串去掉括号和括号里面的内容
using System.Text.RegularExpressions;var majorname = "考古学(清华大学)".Replace("(", "(").Replace(")",")");majorname = Regex.Replace(majorname.Replace("(", "(").Replace(")", ")"), @"\([^\(]*\)", "");最终...原创 2020-03-18 16:20:45 · 6437 阅读 · 0 评论 -
无法加载文件或程序集“System.Net.Http,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a”
我已经将我的项目复制到一台干净的Windows 10机器上,只安装了Visual Studio 2015社区和SQL Server 2016 Express . 除了与Windows 10和VS2015或SQL Server一起安装的版本之外,没有安装任何其他框架版本 .当我尝试启动WebApi项目时,我收到消息:无法加载文件或程序集“System.Net.Http,Version = ...原创 2020-03-05 09:45:53 · 12090 阅读 · 0 评论 -
Net Core api 中获取应用程序物理路径wwwroot
如果要得到传统的ASP.Net应用程序中的相对路径或虚拟路径对应的服务器物理路径,只需要使用使用Server.MapPath()方法来取得Asp.Net根目录的物理路径,如下所示:// Classic ASP.NETpublic class HomeController : Controller{ public ActionResult Index() { ...原创 2020-02-28 14:16:36 · 7412 阅读 · 0 评论 -
原 android用socket与PC用C#的socket通讯使PC关机
因为本人有时候开着电脑就会床上玩手机,突发奇想用手机控制电脑关机,说写就写,虽然对android编程刚开始不懂,但是android出了个神器编译环境(android studio),比以前的eclipse好用多了,以前配置个环境都头大,现在android studio 就像VS一样方便。刚开始接触android,很多东西都不懂,写出来给一样都是刚开始的友们参考下,有错的地方望大神指出,本例程参考a...转载 2018-08-02 14:22:28 · 720 阅读 · 0 评论 -
安卓Socket与pc端c#服务器的通信 附完整代码
一、前言小生不才,学习安卓socke通信打了很多滚,遇到过很多问题,也翻过前辈们关于socket的讲解,很杂各有见解,案例也不是很完整,于是特地将此安卓Socket与pc端c#服务器的通信代码讲解与socket的资料整理一遍加深理解,希望能有所帮助,小生没写过几次博客,欢迎各位大佬提出宝贵意见。安卓客户端项目源代码与pc端C#服务器与客户端的资源已经上传:安卓Socket与pc端c#服务器的通...转载 2018-08-02 14:26:24 · 3036 阅读 · 4 评论 -
C#制作Windows service服务系列三--制作可控制界面的Windows服务(windows service)
在前面两篇文章中,我们可以做到自启动windows和定时自动执行windows service 系列一: 制作一个可安装、可启动、可停止、可卸载的windows service (downmoon 原创) 系列二:演示一个定期执行的windows服务及调试(downmoon ) 系列三:windows service系列三--制作可控制界面的windows service ...转载 2018-09-17 10:43:30 · 2033 阅读 · 0 评论 -
BinaryFormatter序列化与反序列化(C#)
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u013667895/article/details/78478458BinaryFormatter以二进制格式序列化和反序列化对象。BinaryFormatte序列化:将对象转化成二进制,BinaryFormatte反序列化就是将二进制转化为对象;命名空间: System.Runti...转载 2018-10-25 14:33:48 · 3187 阅读 · 0 评论 -
关于input的file框onchange事件触发一次失效的新的解决方法
在google了众多方法后,网上有这么几种方法:1、替换掉原来的input框2、remove原来的input框,然后在添加进新的一样的input框但是不知道为什么非常不幸的是,怎么弄我都弄不出。。后来我脑袋突然闪过一个灵感,我在触发了一次onchange事件后,他没反应,是不是onchange事件没有绑定,后来发现我的推测是正确的,然后我就重新给他绑定了一个onchange事件,测试通过!!!问题...转载 2018-04-26 09:44:01 · 474 阅读 · 0 评论 -
简单的 CSV 文件解析库
直接上代码,最后附下载地址。using System;using System.Collections.Generic;using System.IO;using System.Runtime.InteropServices;namespace Frame.Data{ /// <summary> /// 数据表 /// </summary...转载 2018-07-20 16:53:54 · 777 阅读 · 0 评论 -
C# 获取IP地址、主机信息(Host)、浏览器信息
using System;using System.Collections.Generic;using System.Linq;using System.Net;using System.Net.Sockets;using System.Web;namespace NetHelper{ public class Net { #region Ip...原创 2018-07-14 10:01:08 · 5946 阅读 · 0 评论 -
HttpWebRequest的GetResponse或GetRequestStream偶尔超时 + 总结各种超时死掉的可能和相应的解决办法
【问题】用C#模拟网页登陆,其中去请求几个页面,会发起对应的http的请求request,其中keepAlive设置为true,提交请求后,然后会有对应的response:resp = (HttpWebResponse)req.GetResponse();之前的多次调试,一直都是可以正常获得对应的response,然后读取html页面的。但是后来几次的调试,在没有改变代码的前提下,结果GetRes...转载 2018-07-11 17:07:06 · 637 阅读 · 0 评论 -
DataTable 和List之间相互转换的方法
一、List<T>/IEnumerable转换到DataTable/DataView 方法一: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21...转载 2018-07-23 10:06:25 · 12636 阅读 · 0 评论 -
Linq 对两个结果集中存在相等值进行比较后筛选生成两个序列的差集
刚在CSDN上回答了一个Linq 对两个结果集中存在相等值进行比较后筛选生成两个序列的差的问题,。原文地址:http://bbs.csdn.net/topics/390801113?page=1#post-397488195,现在特此记录下来现在有两个结果集做筛选第一个结果集如:var search1= from c in AA select new{科目:book,姓名=name,价格=pri...转载 2018-07-03 15:54:28 · 323 阅读 · 0 评论 -
C# ZipHelper C#公共类 压缩和解压
关于本文档的说明 本文档基于ICSharpCode.SharpZipLib.dll的封装,常用的解压和压缩方法都已经涵盖在内,都是经过项目实战积累下来的1.基本介绍 由于项目中需要用到各种压缩将文件进行压缩下载,减少网络的带宽,所以压缩是一个非常常见的功能,对于压缩微软自己也提供了一些类库微软自带压缩类ZipArchive类,适合NET FrameWork4.5才可以使用调用压缩软件命...转载 2018-05-09 18:26:31 · 6438 阅读 · 0 评论 -
C# 调用WebApi
Post:private void button1_Click(object sender, EventArgs e) { string ss= HttpPost("http://localhost:41558/api/Demo/PostXXX", "{Code:\"test089\",Name:\"test1\"}"); } ...转载 2018-05-14 13:51:00 · 8396 阅读 · 2 评论 -
Unity C# 自定义TCP传输协议以及封包拆包、解决粘包问题(网络应用层协议)
本文只是初步实现了一个简单的基于TCP的自定协议,更为复杂的协议可以根据这种方式去扩展。网络应用层协议,通俗一点的讲,它是一种基于socket传输的由发送方和接收方事先协商好的一种消息包组成结构,主要由消息头和消息体组成。 众所周知,基于socket的信息交互有两个问题: 第一、接收方不能主动识别发送方发送的信息类型,例如A方(客户端)向B方(服务器)发送了一条信息:123,没有事先经...转载 2018-10-31 17:57:07 · 1108 阅读 · 0 评论 -
文件下载之断点续传(客户端与服务端的实现)
阅读目录文件下载-服务端 使用a标签提供文件下载 使用Response.TransmitFile提供文件下载 其他方式文件下载 文件下载-客户端 直接下载 异步下载 断点续传 断点续传(服务端的支持) 多线程同时下载(分片下载)前面讲了文件的上传,今天来聊聊文件的下载。老规矩,还是从最简单粗暴的开始。那么多简单算简单?多粗暴算粗暴?我告诉你可以不写一句代码,你信吗?直接...转载 2018-11-13 09:23:58 · 2756 阅读 · 0 评论 -
.net序列化及反序列化
序列化是指一个对象的实例可以被保存,保存成一个二进制串,当然,一旦被保存成二进制串,那么也可以保存成文本串了。比如,一个计数器,数值为2,我们可以用字符串“2”表示。如果有个对象,叫做connter,当前值为2,那么可以序列化成“2”,反向的,也可以从“2”得到值为2的计数器实例。这样,关机时序列化它,开机时反序列化它,每次开机都是延续的。不会都是从头开始。序列化概念的提出和实现,原创 2012-11-27 09:57:18 · 1133 阅读 · 0 评论 -
MQTT(一)C#使用 MQTTnet 快速实现 MQTT 通信(文末有完整Demo下载)
目录MQTT(一)C#使用 MQTTnet 快速实现 MQTT 通信(文末有完整Demo下载)MQTT(二)在windows64位上安装Python环境MQTT(三)Python客户端+net客户端+net服务端 简单通信MQTT(四)树莓派开机自动运行Python客户端MQTT(五)EMQ开源MQTT消息服务器1 什么是 MQTT ?MQTT(Message Queuin...转载 2019-08-02 15:54:53 · 8054 阅读 · 0 评论 -
C#中图片转换为Base64编码,Base64编码转换为图片
#region 图片转为base64编码的字符串public string ImgToBase64String(string Imagefilename){try{Bitmap bmp = new Bitmap(Imagefilename);MemoryStream ms = new MemoryStream();bmp.Save(ms, System.Drawing.Imagi...转载 2019-01-22 18:22:42 · 3344 阅读 · 0 评论