随笔分类 - C#
摘要:Http请求中的multipart/form-data,它会将表单的数据处理为一条消息,以标签为单元,用分隔符分开。既可以上传键值对,也可以上传文件。当上传的字段是文件时,会有Content-Type来表名文件类型;content-disposition用来说明字段的一些信息;由于有boundary
阅读全文
摘要:C#各版本新功能其实都能在官网搜到,但很少有人整理在一起,并通过非常简短的代码将每个新特性演示出来。https://docs.microsoft.com/zh-cn/dotnet/ C# 2.0版 - 2005 泛型 Java中的泛型不支持值类型,且会运行时类型擦除,这一点.NET更优秀。 // D
阅读全文
摘要:.Net Core使用Selenium自动化测试框架右键保存图片,Selenium相关操作点击跳转 对于图片的保存,通常有俩种方式,第一种是获取页面中图片的Url再下载,另一种方法是模拟鼠标右键保存图片。本文实现第二种方式。 首先获取目标图片的Xpath,再通过Selenium通过Xpath进行元素
阅读全文
摘要:Selenium出现DriverServiceNotFoundException异常,一般是找不到浏览器文件,以谷歌浏览器为例。 查看当前谷歌浏览器的版本,到 https://chromedriver.storage.googleapis.com/index.html?path= 下载对应谷歌浏览器
阅读全文
摘要:.Net Core是微软最新的开源框架跨平台框架 官网文档 .Net Core相关发布指令,以及发布RId便于查看 RID链接 .Net Core要想发布到Linux有俩种方案,分别是依赖框架的部署(FDD)以及独立部署(SCD) 依赖框架的部署 (FDD) 定义 框架依赖的部署:顾名思义,依赖框架
阅读全文
摘要:首先接入NuGet包Log4Net 在项目中添加log4net.config文件 Log4Net的级别None>FATAL>ERROR>WARN>INFO>DEBUG>ALL 若要控制显示的层级,可以在Appender中使用Threshold,当级别小于这个将会过滤,或者如下选择控制层级。 在.Ne
阅读全文
摘要:Selenium中的显示等待指的是,等待某一元素出现或者等待页面加载完成后,才执行下一步。需要用到WebDriverWait类。 例如: var wait = new WebDriverWait(driver, new TimeSpan(0, 0, 30)); var element = wait.
阅读全文
摘要:业务需要购买http隧道,发现阿布云还行,使用Selenium本来想要用谷歌浏览器的,但是发现不能直接设置账号,所以选用火狐。 按照官方JAVA示例的改编,其中WebDriver实例化不能直接添加FirefoxProfile,所以需要创建一个FirefoxOtions,在这里面添加Profile。
阅读全文
摘要:当你将.NET程序发布到不同机子时候,想要进行调试,但机子不足以安装VS或安装VS麻烦,可以考虑使用远程调试,这里以C#项目为例,asp.net方法略有不同 原理: 首先安装VS远程调试工具,有俩种安装方法: 方式一: 从官网下载(官方案例中的连接已经失效,所以用下面这个连接,选择发布程序对应的处理
阅读全文
摘要:MySql安装如下: https://www.cnblogs.com/dlvguo/p/9671832.html Unity连接MySql首先要在Unity的安装目录D:\Unity2017\Editor\Data\Mono\lib\mono\2.0引用4个dll文件: I18N.CJK.dll、I
阅读全文
摘要:最近在项目中控制台为了调试使用Console.WriteLine(),发现在高并发的情况下会出现假锁状态,断点调试发现卡在Console.WriteLine那。需要进行一个键盘输入才可以继续。 关于Console内部不是特别清楚,MSDN介绍说,不建议Console类在服务端程序中使用,在Winfo
阅读全文
摘要:c#使用正则表达式要用到System.Text.RegularExprssions命名空间 官方API Regex类是用于匹配表达式: 通常Regex分为静态类和实例化俩种方式。那这俩种有什么区别呢,一般情况下使用静态的Regex的时候,.net会自动将正则表达式缓存起来,而在使用相同的时候正则的时
阅读全文
摘要:ADO.NET Entity Framework 是微软以 ADO.NET 为基础所发展出来的对象关系对应 (O/R Mapping) 解决方案,不仅支持SQL Server,还支持MySQL、Oracle等数据库。 首先安装MySql: MySql5.7的安装 然后要想VS能够连接MySql需要安
阅读全文
摘要:在爬虫过程中,有的网页是动态更新的,有的数据会在页面加载时通过js加载或者用ajax加载,这时候如果只用普通的Request和Response获取的HTML页面将会不完整。所以这时候可以采用Senlium. Selenium 是用于Web应用程序自动化测试的开源工具。通过Selenium,你可以模拟
阅读全文
摘要:C#定义了多个预处理指令,它们可以改变编译解释程序源文件的方式。 #define:定义符号,定义的符号在后期判断后为true #if和#endif:判断程序集内部的符号是否定义如果定义就执行#endif之间的句子可以用逻辑判断 #else和#elif:指在#if失败下用的 #undef:删除定义的符
阅读全文
摘要:基类的方法被标记为virtual 在派生类中有匹配的override方法 For Example: class MyBaseClass{ Virtual public void printf(){ Console.WriteLine(“Fuck”);} } class MyDerived:Mybas
阅读全文
摘要:LINQ代表语言集成查询(Language-Integrated Query),它包括用于从数据源检索信息的一组功能。数据检索是许多程序的重要组成功能。 简介:System.Linq; var numPos=from n in x where n(条件) select 选择; 排序:使用orderb
阅读全文
摘要:命名空间是为了将不同类放进同一个文件中,类似c语言中的头文件,便于封装类,避免命名冲突。 using的使用命名方法: 例如在namespace mytest中test类可以用: using hh=mytest.test; 将hh转换成test类。 可以将同一个命名空间分为多块来写,可以用命名空间.来
阅读全文
摘要:C#继承类中如含有相同的方法,避免冲突使用new关键字。在不同对象中分别对应该方法。若使用override关键字则,基类中的方法被覆盖。 如需调用非覆盖的则使用base关键字。 Java中的继承类方法默认覆盖原方法,若想使用则需使用base关键字,否则若在继承类调用基类中的this方法则也被覆盖。C
阅读全文
摘要:对于c#获取Sql数据目前我采用的是 System.Data.SqlClient.SqlDataReader类. 主要用到如下API: SqlDataReader.Read():每次获取一行的数据,直到没有数据为止 数据获取可以用GetString()、GetInt()、GetBool()+括号内索
阅读全文