
C#
陈熙之
又要写代码 又要管数据库 又要管服务器 最后都是半残
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
.netcore 给api加了一层缓存
为了方便,没使用redis之类的nosql做缓存,直接选择了IMemoryCache1.Startuppublic void ConfigureServices(IServiceCollection services){ services.AddMemoryCache();}2.基类using Microsoft.Extensions.Caching.Memory;public class BaseApi : ControllerBase {原创 2022-03-24 09:58:38 · 1420 阅读 · 0 评论 -
C# 回顾goto
原本在读取接口后回绑vue的el-cascader组件结果现在层级多了,没法直接id和pid拼数组去绑定了。又难得去循环找el-cascader绑定的数据。又难得去写递归。就想在方法里面写,然后突然想到了goto,让他自己去循环查吧。sys_menu menu = new sys_menu(); menu = bll.GetEntityByPrimaryKey(id); var _m =原创 2022-03-10 23:08:31 · 134 阅读 · 0 评论 -
算法:两个经纬度之间的距离
由于需要找以一个坐标点最近的一个气象站坐标,读取它对应的气象数据。#region 两个经纬度之间的距离 //地球半径,单位米 private const double EARTH_RADIUS = 6378137; /// <summary> /// 计算两点位置的距离,返回两点的距离,单位 米 /// 该公式为GOOGLE提供,误差小于0.2米 /// </summary>原创 2021-12-28 14:02:56 · 297 阅读 · 0 评论 -
Tuple & ValueTuple
偶然间看到Tuple,查询了一下,顺便还发现了ValueTuple,可以指定多个参数,还可以参数嵌套Tuple,作为方法返回值,或参数。。。方便。按照Tuple写的apivar relist = new List<Tuple<string, string, decimal>>();relist.Add(new Tuple<string, string, decimal>("PM2.5", "优", 1111));relist.Add(new Tup..原创 2021-11-15 09:44:33 · 297 阅读 · 0 评论 -
今天犯了个错,List<string>取MAX,给坑了
static void Main(string[] args) { List<string> list = new List<string>(); for (int i = 1; i < 20; i++) { list.Add(i+""); } Console.WriteLine(list.Max(a=&...原创 2021-07-24 16:14:20 · 479 阅读 · 0 评论 -
Mysql添加报错 MySqlException: Incorrect string value: ‘\xE5\xAF\xBC\xE5\x85\xA5...‘ for
An error occurred while updating the entries. See the inner exception for details.”MySqlException: Incorrect string value: '\xE5\xAF\xBC\xE5\x85\xA5...' for莫名其妙的错误,出现这种鬼字符,多半就是字符集的问题。看了库,没问题,utf-8看了表,懵逼了。。改成utf-8,点保存最后发现还是不对。。依然是这个错。但是错原创 2021-07-23 14:28:18 · 414 阅读 · 0 评论 -
C#的事务
using (var db = new BaseContext()) { db.Configuration.ValidateOnSaveEnabled = false; using (var ts = new TransactionScope(TransactionScopeOption.Required, new TransactionOptions { IsolationLevel = Iso原创 2021-06-29 10:40:03 · 1313 阅读 · 0 评论 -
lambda 加行号
var data = DbContext.Where(a => a.CustomerID == CustomerID). OrderByDescending(a => a.IsSelf).ThenByDescending(a => a.CreateTime). Select(a => new { id = a.Id,原创 2021-06-24 17:06:45 · 354 阅读 · 0 评论 -
lambda表达式来实现Left Join和Inner Join
自己做了记录Left JoinCustomerFollowup.Where(a => a.IsDelete == false && a.CustomerID == request.CustomerID). GroupJoin(Org, a => a.CreateOrgId, b => b.Id, (a, b) => new { Followup = a, Org = b }).原创 2021-06-18 17:36:00 · 6285 阅读 · 0 评论 -
访问url的时候,Request Headers的汉字必须编码
问题是出现在VUE网站调用WEBAPI的接口,为了安全,增加了验证export function createsign(data) { if (data != null && data != undefined) { data = objKeySort(data); var txt = ""; var newkey = Object.keys(data); for (var i = 0; i < newkey....原创 2021-06-08 18:00:11 · 1710 阅读 · 0 评论 -
mvc的[FromBody]参数是null
[FromBody]一直没去研究到底是啥玩意,以为是只能在from表单里的参数,一直也没去加这个,直接都是 func(string name,int id){...}今天用别人的代码,发现这个问题,才去了解了下,也没看出个什么鬼貌似那些基本的数据类型,string、int、datetime、bool,加了[FromBody],去访问,参数都是null加一个实体集public class DeleteReq{public string id { get; set; }}public ...原创 2021-05-12 12:58:36 · 1500 阅读 · 0 评论 -
AlipayEasySDK Config的问题+简单操作
我们一个项目,客户给的支付方式是支付宝,以前没做过,新出的AlipayEasySDK,看着挺简单的,朋友就开始搞了,几天没搞出来,我就顺便去瞧瞧了,反正还没写过支付宝的,学习下。。拿着他的代码,看了下就是nuget了一个AlipayEasySDK,然后复制阿里的例子,反正死活不通,错误:签名遭遇异常,去git上面下载alipay-easysdk/csharp/把代码拆分了下,黄色框架是错误位置,前2个参数都是自动获取了,第三个没有值,最后一个也是获取到值的,以为是key弄错了,去阿里看了下.原创 2020-09-24 10:52:24 · 6117 阅读 · 0 评论 -
C# Table DBNull.Value
来建张表,某个字段为null,随便加了点数据今天公司一个小朋友问我,我判断了为null的,怎么还报错呢?通常在C#里面写代码判断值是否null,就是 obj == null因为知道他写的是个控制台应用程序,估计多半返回的是table,就直接告诉他你如果用的是table就要判断dbnull。来看看返回的类型:所以问你必须要用 if (obj== DBNull.Value) 来判断。另外用table添加到表,字段为null的时候,也是需要赋值为DBNull.Value。总..原创 2020-07-23 16:04:38 · 631 阅读 · 0 评论 -
C# 删除 Cookie 方法
var user = new HttpCookie("UserInfo");user.Values["UserID"] = Model.ID.ToString();user.Values["TrueName"] = Model.TrueName;user.Expires = DateTime.Now.AddDays(1);//user.Expires.AddDays(1);Response.AppendCookie(user);首先是添加,这里要说明下,注意注释掉的那条。用user.Ex.原创 2020-06-30 11:35:54 · 4139 阅读 · 0 评论 -
winfrom+Fleck 上传文件
最近这个项目要做一个Winfrom上传Execl到服务器。就想到之前用Fleck做的一个小功能,但是客户端Web端的。百度吧,看有没有办法,开始找到fw4 ,但是要引用它的dll,是可以,继续找了会结果找到ClientWebSocket,只需要using System.Net.WebSockets;就好了,想着去试试。网上很多Fleck的例子,server.Start 中只需要加上...原创 2020-04-16 15:08:18 · 869 阅读 · 1 评论 -
'_xlnm._FilterDatabase$' 不是一个有效名称
做了很多次读取Execl的功能了。今天头一次碰到这个问题:'_xlnm._FilterDatabase$' 不是一个有效名称。请确认它不包含无效的字符或标点,且名称不太长。今天是准备不考虑一个Execl有多少个表,表名叫什么。通过下面代码:DataTable schemaTable = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables,...原创 2020-04-14 15:47:03 · 6100 阅读 · 1 评论 -
C# 的 Queue
队列(Queue)是一个先进先出的对象集合。如果需要进行先进先出的访问时,那么就需要使用队列。需要引用 using System.Collections;//实例化队列 Queue q = new Queue(); Console.WriteLine("创建队列 添加元素A-F"); //将元素添加在队列结尾处...原创 2020-03-13 10:31:59 · 600 阅读 · 0 评论 -
生成的时候总会有错误提示 这台计算机上缺少此项目引用的 NuGet 程序包
有时候NuGet包会出异常。。然后生成的时候总会有错误提示,很恶心。这台计算机上缺少此项目引用的 NuGet 程序包。使用“NuGet 程序包还原”可下载这些程序包。有关更多信息,请参见 http://go.microsoft.com/fwlink/?LinkID=322105。缺少的文件是 ..\packages\EntityFramework.6.3.0\build\EntityFr...原创 2019-11-14 11:06:15 · 2021 阅读 · 0 评论 -
C# 利用 SqlBulkCopy 提交
最近要迁移数据,一个老版本的数据迁移到新版本的数据库中,字段、配置、参数什么的完全不一样。纠结啊,写代码估计只花了1/5的时间,对字段参数这些简直是惨不忍睹啊。。。还算比较清楚结构的我,都已经无语了。最后遇到SqlBulkCopy各种问题以前封装好的方法只有单独一个表添加,调用了几次方法,经常出现此 SqlTransaction 已完成;它再也无法使用。好吧,我改。。。u...原创 2019-07-11 10:41:12 · 1120 阅读 · 0 评论 -
MVC Ajax.BeginForm重复提交
今天同事给我说有个页面会重复提交,看了好久代码都没问题。最后才发现是异步提交的js重复引用了,首页上面根本没有用那个js,我一直都放在弹出层的页面里的,好无语。。。点一下就提交2-4次。。<script src="~/Scripts/jquery.unobtrusive-ajax.min.js"></script>赶紧把这个去掉重复,尼玛终于恢复正常了。。。又一...原创 2019-06-28 10:42:05 · 394 阅读 · 0 评论 -
Mvc的一些错误记录
1.无法对 null 引用执行运行时绑定页面上的 @ViewBag.XXX 在Controller中没有赋值,值为null,对其做了其他操作,如ToString(). 2.配置系统未能初始化 / 无法识别的元素。WebConfig 或者 AppConfig 配置错误 3.The entity types 'XXModel' and 'XXXModel' cannot sha...原创 2018-08-22 15:24:39 · 799 阅读 · 1 评论 -
获取目录,遇到的坑
//1.获取模块的完整路径。 System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName;//E:\工作目录\NewTFS\H2控制台应用程序\KILL\bin\Debug\KILL.vshost.exe//2.获取和设置当前目录(该进程从中启动的目录)的完全限定目录 System.Environment.Cur...原创 2019-07-22 19:22:26 · 274 阅读 · 0 评论 -
时间for循环 别写错了,不然就坑大了
string MonthList = ""; for (DateTime i = BeginTime; i <= EndTime; i.AddMonths(1)) { MonthList += "'" + i.Month + "月',"; } if (MonthL...原创 2019-07-31 17:16:16 · 1133 阅读 · 0 评论 -
索引(从零开始)必须大于或等于零,且小于参数列表的大小.
错误问题,使用AppendFormat的时候,stringFomart 定义的{0}-{4},后面给的参数少了一个。StringBuilder dataThisA = new StringBuilder();string dataThisFomart = "{{ name: \"{0}\", value: {1}, chargvalue: {2} / {3} }}{4}";dataTh...原创 2019-08-07 10:39:11 · 3325 阅读 · 0 评论 -
C# web调用控制台应用程序
今天帮同事写了一个小东西,web上有个功能是开始考试,然后到时结束改变状态就给他说了Process调用进程,传参,定义一个timer,然后到时执行SQL改掉数据。webProcess pro = new Process(); //控制台应用程序所在目录 pro.StartInfo.FileName = @"E:\测试目录\web调用exe\...原创 2019-09-09 09:57:46 · 2341 阅读 · 0 评论 -
C# 的decimal精度入库的问题
首先说一下C# 和 SQL 中的decimal默认都是 (18,2) 。就算SQL把精度改成 (18,4),C#进去的数据依旧是(18,2),第三四位小数,根本进不了,比如插入0.1234直接数据库成0.1200那么可能会出现统计的一些问题-----对不齐。。。然后领导各种喷。。mvc中,需要对字段重新定义字段类型,就是codefirst的那一套。摘要:允许为模型中的实体类...原创 2019-10-10 16:52:14 · 2680 阅读 · 0 评论 -
Random 取随机数
int Num=10;Random ran = new Random();Console.WriteLine(ran.Next(1, Num + 1));今天一个同事问我取随机数为什么要+1,这样不会取到11吗,到时候根据这个去取值就溢出了。我也很无语,其实这个随机数是取的小于11的数,也就是1-10的随机数。...原创 2019-07-08 15:49:46 · 3112 阅读 · 0 评论 -
Mvc 使用JavaScript执行JS
public ActionResult FunctionName(){ return JavaScript("$('#btn_submit').click();AddGoOutInfo.CloseWindow();Tips.Success('添加成功!'); ");}前提条件:<script src="~/Scripts/jquery.unobtrusive-...原创 2019-06-18 10:03:46 · 1632 阅读 · 0 评论 -
C# Trace 用来写日志,做错误记录都挺不错的。
用来写日志,做错误记录都挺不错的。 Trace.Listeners.Add(new TextWriterTraceListener(@"D:\Test.log")); Trace.AutoFlush = true; Trace.WriteLine(DateTime.Now.ToString() + "--开始执行该程序"); ...原创 2019-02-20 10:47:44 · 1576 阅读 · 0 评论 -
C# 的 #if DEBUG使用
DEBUG+Assert调试代码还是不错。int i = 10;#if DEBUG Debug.Assert(i < 9,"条件不成立"); WriteLine("DEBUG");#else WriteLine("Release");#endif在Debug和Release模式下会分别执行不同的代码。Debug...原创 2019-02-20 10:27:53 · 6245 阅读 · 0 评论 -
解决 vs2015 发布失败
最近几个项目不知道为什么,发布不报错,但是一直失败。无语啊看了这位大神的文章,https://www.cnblogs.com/c-supreme/p/8880034.html得以解决,发布成功了。开始这玩意2.9版本的,降级到2.4,发布成功。真心感谢!!...原创 2019-02-28 17:46:07 · 1205 阅读 · 0 评论 -
基于Microsoft.Web.Administration的IIS自动挂站
今天在琢磨网站隔段时间打开很卡的情况,百度呗,各种尝试,走着走着突然发现一个能生成脚本的东西。还有熟悉的C#,其他的无视,基本也不会。难道能用程序挂个站撒的?查了查,果然有这么个东西。。。https://www.cnblogs.com/zhaochengshen/p/7976894.html借来引用下:C# IIS站点管理--Microsoft.Web.Administrati...原创 2019-02-28 17:36:11 · 1113 阅读 · 0 评论 -
webapi 错误 请确保控制器具有无参数公共构造函数
同事发现一个接口出现{"Message":"出现错误。"},然后本地连网上数据库,正常。。。配置下<customErrors mode="Off"/>,出现了“请确保控制器具有无参数公共构造函数”第一次看到这个错,都懵逼了。。万能的百度啊。。。 同事在Controller里面调用了Helper类,构造函数里在config里获取了一堆key,本就不应该调用那玩意的。乱用。...原创 2019-02-27 17:44:56 · 4701 阅读 · 0 评论 -
WebApi 找到了与该请求匹配的多个操作
WebApi,方便,但是按照他的路由规则就真心有点蛋疼。稍不注意就给你来个找到了与该请求匹配的多个操作今天同事又遇到了,随便就记录下吧。有2个方法:public ApiPage ApiPage(string openid, int pageIndex)public DataPage Page(string openid, int Type, int pageIndex = 1, i...原创 2019-01-23 16:34:18 · 1247 阅读 · 0 评论 -
C# 循环枚举
public enum MemberTypeEnum { /// <summary> /// 销售 /// </summary> 销售 = 1, /// <summary> /// 服务 ...原创 2019-01-24 16:17:28 · 3574 阅读 · 0 评论 -
TFS工作区修改
今天装了一台代码服务器,SQL2014+TFS2015,2核4G,小公司够用就好。。想着来记一下之前遇到的一件事,本地的一台服务器,不管是获取、签出、签入都很慢,大家都快狂暴了,后来网上查了下,把工作区改成服务器之后,一切都爽了。。。这种方式最好改,也好记。 位置:选择服务器确定就好了。。。。 另外一种要在团队资源管理器里搞 ...原创 2019-01-17 16:53:31 · 2923 阅读 · 0 评论 -
C#方法调用的时提示换行
今天写代码的时候,突然看注释很不爽,虽然方法中都是换行了的,但是在调用的时候,都成一行然后自动换行,一堆写,查查网上结果还真有,调用显示清晰多了。 /// <summary> /// 方法名 第一行 /// <para>第二行</para> /// <para>第三行</para...原创 2018-10-27 16:17:19 · 386 阅读 · 0 评论 -
Task写多线程真的好简单
var task1 = Task.Run(() => { Thread.Sleep(500); Console.WriteLine("小耗子"); }); var task2 = Task.Run(() => { ...原创 2018-08-31 10:45:18 · 2251 阅读 · 0 评论 -
C# 浮点转字符串 去掉.0000 的方法
ToString("0.####")浮点转字符串 去掉.0000 的方法,#表示有效数字,除了0才显示,是就直接省略真的好用,以前傻傻的ToString("F2"),再替换.00为空,这个明显科学多了。...原创 2018-08-22 17:27:00 · 2144 阅读 · 0 评论 -
string.Format和StringBuilder.AppendFormat异常:输入字符串格式不正确
string dsb = "";//dsb = string.Format("{\"AreaID\":\"{0}\"}", 1);//错误:输入字符串格式不正确dsb = string.Format("{{\"AreaID\":\"{0}\"}}", 1);//正确Console.WriteLine(dsb.ToString());StringBuilder原创 2018-08-22 14:27:42 · 2285 阅读 · 0 评论