Skip to content

Instantly share code, notes, and snippets.

View songzheng45's full-sized avatar

Robin Song songzheng45

  • Beijing
View GitHub Profile
@songzheng45
songzheng45 / get-user-profile-folder.md
Last active December 23, 2023 23:47
C# - get user profile folder
using System.IO;


string userProfile = Environment.GetFolderPath(Environment.SpecialFolder.UserProfile);
// output : C:\Users\robin

string myDocuments = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
// output : C:\Users\robin\Documents
@songzheng45
songzheng45 / aspnetcore-http-logging-middleware.cs
Last active June 4, 2023 06:23
ASP.NET Core Http Logging middleware
using System;
using System.IO;
using System.Text;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Http.Internal;
using Microsoft.IO;
// https://exceptionnotfound.net/using-middleware-to-log-requests-and-responses-in-asp-net-core/
// https://gist.github.com/elanderson/c50b2107de8ee2ed856353dfed9168a2
@songzheng45
songzheng45 / generate-random-string-num.cs
Last active October 16, 2021 05:12
生成不重复的随机数 (验证码、随机密码等)
using System;
public class Program
{
private const string VCHAR = "0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z";
private const string VNUM = "0,1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9";
public static void Main()
{
Console.WriteLine(RndNum(16));
@songzheng45
songzheng45 / HttpClient-download-file.cs
Created June 15, 2017 02:23
C#-HttpClient 下载文件
using System;
using System.Configuration;
using System.Diagnostics;
using System.IO;
using System.Net.Http;
using System.Threading;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace SevenStarCollect.Update
@songzheng45
songzheng45 / ThinkpadKeyboardMap.ahk
Created January 2, 2017 03:16
重映射Thinkpad 4X30K12182 蓝牙键盘的功能键为F1 ~ F12,需要先安装AutoKey
#SingleInstance force ; 重新启动该文件会加载修改过的.ahk文件
; auther LC
; 重映射Thinkpad 4X30K12182 蓝牙键盘的功能键为F1 ~ F12
; remap Thinkpad 4X30K12182 blue tooth keyborad Fn keys to F1 ~ F12 ;
; save this file as thinkpadRemap.ahk and install autohotkey to run it
; 不想重映射哪个按键就在那一行前面加一个分号
@songzheng45
songzheng45 / CodeSmith 连接 MySql 找不到 Data Provider.txt
Last active October 24, 2019 09:25
CodeSmith 连接 MySql 提示“找不到请求的 .Net Framework Data Provider "
codesmith连接Mysql提示“找不到请求的 .Net Framework Data Provider。可能没有安装"
@songzheng45
songzheng45 / filebeat_sample.yml
Created June 20, 2019 06:41
elk filebeat config sample
#=========================== Filebeat inputs =============================
filebeat.inputs:
- type: log
enabled: true
fields:
_recharge_api: true
paths:
@songzheng45
songzheng45 / Html-跑马灯效果.txt
Last active December 14, 2018 12:00
Html 跑马灯效果
marquee
marquee是已经废弃、过时的标签,不推荐使用!在Chrome不同版本中有很多bug,如,Chrome45.0中动画执行完总是需要点一下页面才能继续,
最新版的Chrome52.0则没有这个问题。
虽然已经过时,有时候还是不得已用到,这里简单对几个属性做一下介绍。
behavior : 可用的值为scroll(滚动)、slide(滑动)、alternate(改变,类似于光学的反射路径),如果没有指定值,默认是scroll
direction : 设置方向,可用的值为left、right、up、down,如果没有指定值,默认是left
scrollamount : 控制速度
@songzheng45
songzheng45 / strip-utf8-bom.cs
Last active October 31, 2018 06:53
C# strip utf8 bpm
using System;
using System.Text;
using System.IO;
namespace ConsoleApp
{
// 将 UTF-8 Bom 转换为 UTF-8 的几种方法
class Program
{
@songzheng45
songzheng45 / random-get-prize.md
Last active September 17, 2018 03:20
get lucy prize 随机抽奖品
[Serializable]
public class PrizeDetail:ICloneable
{
    public string Id { get; set; }
    /// <summary>
    /// 奖品名称
    /// </summary>
    public string PrizeName { get; set; }
    /// <summary>