C#
日常项目经验和遇到问题解决方案
低调之人
偶尔写写博客
展开
-
日志帮助类LogHelper
一个比较简单的日志帮助类,方便临时测试异常bug。原创 2023-01-10 13:46:17 · 890 阅读 · 0 评论 -
通过post或ajax请求后response header 设置cookie未更新值
有时间在做验证码校验时,服务端会存放当前浏览器用户的临时验证码信息,比如通过session、cookie等方式进行存放,在校验的时候也方便使用和更新等。系统是通过cookie进行存放到浏览器端,cookie的值是经过加密,用户是看不到未加密的数据,当用户第一次进入页面,图形验证码会生成一个code,同时往浏览器写入cookie;用户可以多次点击重新生成验证码,相应的cookie值也要进行更新替换,否则校验的时候无法通过。原创 2022-10-12 14:28:09 · 2271 阅读 · 0 评论 -
IIS put请求 报HTTP Error 405 - Method Not Allowed
在新的服务器上部署了一个.netcore的项目,部分请求地址使用了put、delete方式,导致无法正常请求,报Error405-MethodNotAllowed。在“删除角色和功能向导”=》一步步往下走,找到“服务器角色”=》“web服务器(IIS)”=》“Web服务器”=》“常见HTTP功能”=》“WebDAV发布”,由于配置IIS时把“WebDAV发布”给勾选了,所以会导致拦截。3、在服务器管理器中,找到“管理”=》“删除角色和功能”1、打开“控制面板”=》“程序和功能”...原创 2022-07-15 10:43:09 · 4385 阅读 · 0 评论 -
tfs 文件被签出和锁定,如何强制撤销已锁定文件
项目组的人员离职属于正常显示,但是偶尔会出现离职了,但是代码被签出,并且被锁定,导致其他人员修改代码后,无法提交签入。网上也找了一些方式,很多是没有描述清楚,还有的是删除tfs数据库的记录,有些表也找不到,所以不能保证解决问题。...原创 2022-06-07 11:24:29 · 1518 阅读 · 2 评论 -
nginx证书填写路径报错:SSL: error:0200107B:system library:fopen:Unknown error:fopen
nginx配置ssl证书时,启动报错,无法找到证书文件,报错日志如下:2021/11/24 15:52:19 [emerg] 4124#3800: cannot load certificate "E:ginx-1.21.4\ssl\6667030_xxxx.pem": BIO_new_file() failed (SSL: error:0200107B:system library:fopen:Unknown error:fopen('E:ginx-1.21.4\ssl\6667030_xxxx原创 2021-11-24 16:05:53 · 8405 阅读 · 4 评论 -
mvc中使用视图模板cshtml动态生成generated文件
一、原因在MVC中,经常会使用一些模板视图,这样会把公用的页面定好,各个功能模块就可以引用调用,无需每个页面都写相同的代码,如果后续修改,也需要在一个地方就可以更改内容。比如网站的底部说明,关于我们、联系电话等,可以把这些代码放到统一的cshtml文件里即可。二、解决方案找到工具,然后转到扩展管理器>联机,搜索Razor Generator>单击下载按钮。安装完成后,重新启动Visual Studio,然后重新生成即可,下载时间太慢或者失败,那需要自己重新下载几.原创 2021-01-16 13:06:52 · 1333 阅读 · 0 评论 -
.net core 的IIS设置环境变量 ASPNETCORE_ENVIRONMENT
IIS统一设置ASPNETCORE_ENVIRONMENT 的变量,不需要每个站点都在webconfig里进行配置,这样每次发布版本可能会被覆盖,比较麻烦,所以统一更是最好的选择,那具体步骤呢?步骤如下:1、打开IIS管理器,选择跟节点,找到“管理”=》“配置编辑器”,如下图:2、选择节点“system.webServer/aspNetCore”,再找到“environmentVariable”项,点击右侧“编辑项”,如下图:3、点击添加,输入:ASPNETCORE_ENVIRONM原创 2020-09-02 14:59:27 · 5812 阅读 · 2 评论 -
C#通过UrlReWrite配置重定向以及代理Proxy中的超时请求
项目使用UrlReWrite重定向功能,同时也设置了代理,但是IIS的默认是120秒,高级设置里的连接超时也设置7200秒,但是网站在导出excel的时候,还是出现502-web服务器在作为网关或代理服务器时收到了无效响应,由于数据量比较大,肯定超过120秒了。总之iis和webconfig中的httpRuntime也都设置7200秒了,但是依然还出现超时。那如何解决?IIS跟站点=》application request routing cache=》ServerProxy Setti..原创 2020-08-28 10:07:18 · 1290 阅读 · 1 评论 -
H5 下载word文件时预览失败,提示无法预览此文件,它可能已损坏,有部分可可以查看预览
移动端H5下载文件功能时,发现部分word文件可以在线打开 有些无法打开,提示“无法预览此文件,它可能已损坏”;但是在Pc端下载是可以正常打开的,移动端是不行。代码如下: byte[] array = result.DecryptContent; MemoryStream stream = new MemoryStream(array);...原创 2020-03-12 14:59:28 · 6299 阅读 · 0 评论 -
Your project does not reference
运行生成类库报错:Your project does not reference ".NETFramework,Version=v4.5.1" framework. Add a reference to ".NETFramework,Version=v4.5.1" in the "TargetFrameworks" property of your project file and then ...原创 2019-10-17 17:21:29 · 3614 阅读 · 3 评论 -
C#一些验证方法
#region IsSafeSqlString 检测是否有Sql危险字符 /// /// 检测是否有Sql危险字符 /// /// 目标字符串 /// 是则返加true 不是则返回 false public static bool IsSafeSqlString(string targe原创 2014-03-04 11:12:03 · 131136 阅读 · 0 评论 -
win7安装vs2012失败
win7安装vs2012失败。提示WebDeploy/WebDeploy_x64.msi 无效驱动器,无法安装。 网上搜索到解决办法: 第一关闭杀毒软件。 第二把系统时间调整到7月(因为vs2012好像打什么补丁了)。 第三在vs安装界面现在从网络下载。 然后自己尝试安装成功。原创 2014-03-04 11:29:50 · 135477 阅读 · 0 评论 -
Lync二次开发 windows服务出现The host process is not running
用winform调试时获取当前客户端不会出现The host process is not running如下代码:lyncClient = LyncClient.GetClient();//获取当前客户端但是如果写成服务,在开启服务时会出现这样的情况。原因:当前登录用户权限不够。 Lync客户端没有安装或者没有启动Lync客户端。解决:在服务器原创 2014-03-04 11:33:06 · 131875 阅读 · 0 评论 -
HtmlAgilityPack.dll网页抓取数据
根据公司的需求需要到指定网站抓取相关数据,即爬虫。 网上有很多的工具以及第三方的dll,也可以用WebClient等进行抓取网站内容 ,或者使用一些正则解析、截取字符串。 所以在网上搜索一下,发现HtmlAgilityPack这个第三方的dll很不错,都是封装 好的方法,直接调用即可。是将gtml转化成xml,然后原创 2014-03-04 13:59:24 · 135636 阅读 · 0 评论 -
imgareaselect控件裁剪图片问题
imgareaselect官网:http://odyniec.net/projects/imgareaselect/进行下载、以及查看官网案例、文档。使用imgareaselect进行裁剪头像,然后上传图片,还是比较简单,是通过js进行裁剪的,但是往往会发现我们裁剪的图片区域不对,会有很大的偏差,本来是想裁剪头部,结果成了脚,比较郁闷。。。。这是为什么呢?原创 2014-03-04 10:38:58 · 131994 阅读 · 2 评论 -
C#生成、解析xml文件以及处理报错原因
简单的介绍一下生成XML文件以及解析,因为有些数据不一定放到数据库,减少链接数据库 用xml还是比较好些。如果遇到问题也就是解析时报错,对于解析,可以选择用ie浏览器进行验证 是否符合xml格式,不能显示说明不正确,用记事本打开看也没有发现啥情况,复制出来到别的xml 文件里,运行可能正确,那就说明生成的xml编码有问题。还有就是节点有什么空格啥的。原创 2014-03-11 18:02:09 · 146278 阅读 · 0 评论 -
uploadify上传控件
下载控件:uploadify 分为2种,选择Flash Version版本地址:http://www.uploadify.com/ 页面代码: 上传控件 $(document).ready(function () { $("#uploadify").uploadify({原创 2014-04-03 14:33:43 · 142378 阅读 · 0 评论 -
visual_studio2012、vs2012下载
vs2012下地址:ed2k://|file|cn_visual_studio_professional_2012_x86_dvd_920783.iso|1590749184|52B956DB8119CFB1610CC8E369F5F1FD|/原创 2014-07-24 13:48:29 · 148676 阅读 · 2 评论 -
vs2012的tfs账号更改
vs2012更换账户,可能不常用,当时有时特殊化,需要进行账号更改,原创 2014-09-05 10:24:41 · 151961 阅读 · 0 评论 -
mvc4设置伪静态---路由伪静态
有些客户要求设置静态的,为了完成需求,而且更简单的d原创 2014-09-05 15:39:31 · 153475 阅读 · 4 评论 -
tfs2012报错TF204017,没有访问工作区域,需要一个或者多个必须权限
问题: tfs2012原创 2014-09-05 10:00:27 · 150292 阅读 · 0 评论 -
visual_studio2013、vs2013下载
visual_studio2013、vs2013下载原创 2014-11-26 11:18:04 · 151299 阅读 · 0 评论 -
imgareaselect图片裁剪、js裁剪案例
imgareaselect官网:http://odyniec.net/projects/imgareaselect/进行下载、以及查看官网案例、文档。原创 2014-11-05 16:38:08 · 143749 阅读 · 0 评论 -
word转换成字符串
using Aspose.Words;//要引用这个dll,具体的需要到网上下载是通过Aspose第三方控件读取word中的文字、包括中文、字母、数字等,注意图片无法读取。所以需要因为dll。 #region 获取正文内容 Byte[] wordbytes = GetReadWord();//获取doc文件二进制 var strFil原创 2014-12-08 14:14:42 · 144131 阅读 · 0 评论 -
C# DotNetZip压缩单、多文件以及文件夹
有些项目为了更好的用户体验,会把下载文件做成一个压缩的文件,直接下载,免得去一个个的点击下载文件。网上有很多压缩文件的方法,也有第三方的分装DLL文件,本文主要介绍DotNetZip压缩方法。DotNetZip的DLl下载地址:http://download.csdn.net/detail/lilinoscar/8295255官网下载地址:http://dotnetzip.codeplex.com/原创 2014-12-24 17:26:42 · 148806 阅读 · 1 评论 -
C#获取openfire的用户,包括增、删、改等
目前比较简单的做法就是通过openfire的插件User Service,我们用C#http请求来获取用户列表,返回的是一个xml文件。插件地址:http://www.igniterealtime.org/projects/openfire/plugins.jsp安装插件有两种方式:1.直接到官网下载userservice.jar文件,然后通过管理控制平台上传插件。2.直接在管理控制平台安装此插件,在插件选项卡里有个“有效的插件”菜单,里边有很多插件。原创 2015-01-21 11:13:59 · 145908 阅读 · 0 评论 -
通过UrlRewriter配置MVC4伪静态
有些项目需要设置静态,这样可以被网站收录了,提高网站的排名、内容。如果地址后面有www.a.com/xx.html?id=1是不行,还是不能达到一些需求,怎么才能实现www.a.com/1/xx.html这样的地址呢?解决办法就是用一个比较简单方式:UrlRewriter,通过该dll可以实现。这只是一个简单伪静态,真正实现静态页面要通过后台代码生成静态的html页面。下载地址:UrlRe原创 2015-03-13 17:20:05 · 145084 阅读 · 2 评论 -
vs、tfs强制撤销签出
C#的项目管理基本上都是用tfs来进行代码管理,有时候也用svn等工具,这里只介绍用tfs团队管理出现的一个问题,那就是用户签出文件,然后没有及时签入或者各种原因导致无法继续签入,那怎么办?虽然网上有多种办法撤销,比如敲命令,这样太繁琐了,而且也不一定记得住,管理维护太麻烦,那有没有一种可视化的管理撤销代码呢?有个工具:Sidekicks.vsix 安装到服务器上,进行配置,就可以可视化的原创 2016-02-01 15:37:02 · 144291 阅读 · 0 评论 -
sqlserver服务器名称改成本地IP地址登录
在安装sqlserver2008、2012等时选择的是默认实例,服务器名称也就是电脑的名称,特别是登录本地的数据库,需要输入电脑用户名称加上SQLEXPRESS例如:zhangsan\SQLEXPRESS 而不是自己本机的ip地址:192.168.1.xx 内部网络别的电脑也无法访问。问题就来了,如何修改服务器名称呢,改成用本地IP或者用户名\SQLEXPRESS登录sqlserver?原创 2014-12-26 17:53:40 · 228610 阅读 · 5 评论 -
windows server 2008 R2服务器无法通过ShellClass获取mp3音乐时长
我们先看一段代码,获取mp3播放时长: #region GetMediaDetailInfo 获取媒体文件属性信息 /// /// 获取媒体文件属性信息 /// /// 媒体文件具体路径 /// 具体属性的顺序值(-1简介信息 1文件大小 21时长 22比特率) /// pub原创 2016-03-15 14:26:46 · 142831 阅读 · 3 评论 -
日期格式:ddMMyy-hhmmss,格林威治时间转换成北京时间
有些项目需要第三方的接口来取数据,这样就有个问题,那就是有些字段比较特殊,采用的都是国际标准时间,方便别的语言调用,这样时间差就相差不一样了,需要进行转换。例如:GPS的数据时间格式:ddMMyy-hhmmss 需要转换DateTime类型,如果用Convert.ToDateTime进行转换会报错,因为格式不正确,还有一种方式转换DateTime.ParseExact(date, "ddMMy原创 2016-04-19 14:09:28 · 156004 阅读 · 2 评论 -
C#扩展Distinct判断数组集合是否重复
首先看一个数组结合:List list=new List();list.Add(new person{id=1,name="张三"});list.Add(new person{id=2,name="李四"});list.Add(new person{id=1,name="张三"});list.Add(new person{id=3,name="王五"});list集合已经包含“张三”这原创 2016-05-13 17:09:36 · 145876 阅读 · 0 评论 -
easyui的datagrid右侧没有边框线
做项目时用的easyui的框架的datagrid,设置好宽高值,运行时发现右侧没有边框,其它的都有边框,F12调试可以看到datagrid样式里的宽度没有自动减去2个像素,这些都是easyui自算的宽高,所以肯定的是easyui的js、css应该是没有问题,只有自己写的样式影响或者计算宽高导致datagrid自动算宽高出现问题。如何解决?需要找到你给datagrid赋值宽高的代码,看看是不原创 2016-04-20 18:04:49 · 146720 阅读 · 3 评论 -
exchange管理控制台初始化失败
打开exchange管理控制台时提示初始化失败,导致无法新增邮箱,到底什么问题?网上也介绍了很多办法,比如:重启iis,用户凭证等。如下图失败:我这边的一个解决办法就是权限不够,导致初始化失败。原因:用administrator账户登录后,权限还是不行的,因为exchange的域用户管理员账号和administrator账号是不一样的,所以没有权限,那如何有权限呢?原创 2016-06-16 13:37:09 · 143035 阅读 · 0 评论 -
NPOI合并单元格--CellRangeAddress
做项目时难免会用到报表,这个时候需要导出、导入word、execl等功能,我们可以使用微软自带的dll、也可以使用第三方控件,都是可以。这里就介绍一个DLL文件NPOI.dll的合并单元格。假如我们需要合并第一行和第二行:代码:sheet.AddMergedRegion(new CellRangeAddress(0, 1, 0, 0));CellRangeAddress有4个参数:原创 2016-07-20 15:08:40 · 169661 阅读 · 3 评论 -
web设计器--设计流程图(raphael)(一)
案例是采用raphael的js文件进行画图,适用web设计,可以下载案例,里边是一些html的案例,下载后自己研究一下数据格式引入到自己的项目里。Demo下载地址:http://download.csdn.net/detail/lilinoscar/8332927Code:<link type="text/css" href="lib/jquery-ui-原创 2015-01-06 16:40:18 · 172121 阅读 · 25 评论 -
SQL Server 2016数据库下载
SQL Server 2016 Enterprise (x64)下载地址:ed2k://|file|cn_sql_server_2016_enterprise_x64_dvd_8699450.iso|2452795392|D8AFD8D6245F518F53F720C48E2819C0|/文件大小:2.28GB需要通过迅雷下载,将下载地址复制到迅雷里即可下载。原创 2016-08-18 14:22:24 · 177603 阅读 · 6 评论 -
VS 2013 产品密钥
VS 2013 产品密钥Visual Studio Ultimate 2013 KEY(密钥):BWG7X-J98B3-W34RT-33B3R-JVYW9Visual Studio Premium 2013 KEY(密钥):FBJVC-3CMTX-D8DVP-RTQCT-92494Visual Studio Professional 2013 KEY(密钥): XDM3T转载 2016-09-09 09:40:47 · 143665 阅读 · 0 评论 -
MVC通过NPOI.dll导出excel、word文档
1.首先项目添加并引用:NPOI.dll 2.控制器引用NPOI: using NPOI.HSSF.UserModel; using NPOI.SS.UserModel;3.代码: public ActionResult ExportData() { HSSFWorkbook workbook原创 2016-02-01 14:51:02 · 143302 阅读 · 1 评论 -
error MSB8031: Building an MFC project for a non-Unicode character set is deprecated.
VS2013编译旧版VC++程序时,提示error MSB8031: Building an MFC project for a non-Unicode character set is deprecated.介绍为什么https://blogs.msdn.microsoft.com/vcblog/2013/07/08/mfc-support-for-mbcs-depr原创 2016-09-12 15:14:57 · 142117 阅读 · 0 评论