随笔- 162  评论- 326  文章- 0 
  2019年9月20日
摘要:在使用net core 进行api开发完成后,书写api说明文档对于程序员来说想必是件很痛苦的事情吧,但文档又必须写,而且文档的格式如果没有具体要求的话,最终完成的文档则完全取决于开发者的心情。或者详细点,或者简单点。那么有没有一种快速有效的方法来构建api说明文档呢?答案是肯定的, Swagger就是最受欢迎的REST APIs文档生成工具之一! 阅读全文
posted @ 2019-09-20 21:41 zock 阅读 (5) 评论 (0) 编辑
  2019年9月16日
摘要:Unable to render this definition The provided definition does not specify a valid version field. Please indicate a valid Swagger or OpenAPI version field. Supported version fields are swagger: "2.0" and those that match openapi: 3.0.n (for example, openapi: 3.0.0). 可能的原因: 1、api中的Controller/Action 请加入[HttpPost]或者 [HTTPGet] 2、api中的Controller中有私有方法(全部写道Service) 3、传入参数模型有问题 阅读全文
posted @ 2019-09-16 23:22 zock 阅读 (57) 评论 (0) 编辑
  2019年9月15日
摘要:有人说.NET在国内的氛围越来越不行了,看博客园文章的浏览量也起不来。是不是要转Java呢? 没有必要扯起语言的纷争,Java也好C#都只是语言是工具,各有各的使用场景。以前是C#非开源以及不能在Linux上使用,没有被互联网公司考虑,但它仍然有它的用途。这几年国内互联网公司进入蓬勃发展时期,所有才有这样的趋势。但并不代表C#不能做互联网应用,可以说在接下来的一年内.net core将会成为一个很好的趋势,结合容器以及微服务架构会成为互联网公司另一个比较好的选择。 作为现在在用.NET的公司,如果有机会可以考虑与时俱进,在真实项目中将.net core用起来。 阅读全文
posted @ 2019-09-15 20:51 zock 阅读 (273) 评论 (1) 编辑
  2019年9月13日
摘要:最近.Net Core程序部署到服务器,采用EF6。本地数据库是SQL server 2016,服务器数据库安装的是SQL server 2008 R2,在用到分页查询时报错如下: { "Depth": 0, "ClassName": "", "Message": "Incorrect syntax near 'OFFSET'.\r\nInvalid usage of the option NEXT in the FETCH statement.", "Source": "Core .Net SqlClient Data Provider", } 阅读全文
posted @ 2019-09-13 15:38 zock 阅读 (18) 评论 (0) 编辑
  2019年9月12日
摘要:.NET Core针对缓存提供了很好的支持 ,我们不仅可以选择将数据缓存在应用进程自身的内存中,还可以采用分布式的形式将缓存数据存储在一个“中心数据库”中。对于分布式缓存,.NET Core提供了针对Redis和SQL Server的原生支持。除了这个独立的缓存系统之外,ASP.NET Core还借助一个中间件实现了“响应缓存”,它会按照HTTP缓存规范对整个响应实施缓存。不过按照惯例,在对缓存进行系统介绍之前,我们还是先通过一些简单的实例演示感知一下如果在一个ASP.NET Core应用中如何使用缓存。 阅读全文
posted @ 2019-09-12 22:55 zock 阅读 (174) 评论 (0) 编辑
  2018年12月26日
摘要:刚使用.NET Core会不习惯,比如如何使用Session;不仅需要引用相应的类库,还需要在Startup.cs里进行注册。 1、在你的项目上基于NuGet添加: install-package Microsoft.AspNetCore.Session -ver 2.0 install-package Microsoft.AspNetCore.Http.Extensions -ver 2.0 2、在Startup.cs里进行注册 在Startup.cs文件中的ConfigureServices方法中添加: services.AddSession(); 在Startup.cs文件中的Configure方法中添加: app.UseSession(); 阅读全文
posted @ 2018-12-26 01:14 zock 阅读 (1154) 评论 (0) 编辑
  2018年12月9日
摘要:ASP.NET Core 2.1中出现一个新的HttpClientFactory功能, 它有助于解决开发人员在使用HttpClient实例从其应用程序发出外部Web请求时可能遇到的一些常见问题。 介绍 在.NETCore平台的2.1新增了HttpClientFactory,虽然HttpClient这个类实现了disposable,但使用它的时候用声明using包装块的方式通常不是最好的选择。处理HttpClient,底层socket套接字不会立即释放。该HttpClient类是专为多个请求重复使用而创建的。需要不同的基地址,不同的HTTP标头和其他对请求个性化操作的场景时,需要手动管理多个HttpClient实例,为了简化HttpClient实例管理,.NET Core 2.1提供了一个新的HTTPClientFactory - 它可以创建,缓存和处理HttpClient实例。 阅读全文
posted @ 2018-12-09 12:40 zock 阅读 (691) 评论 (0) 编辑
  2018年10月22日
摘要:在之前的ASP.NET中,可以通过 Request.Url.AbsoluteUri 获取,但在ASP.NET Core没有这个实现,请问如何获取呢? 阅读全文
posted @ 2018-10-22 14:13 zock 阅读 (2892) 评论 (0) 编辑
  2018年7月4日
摘要:统计代码一般都是直接一个标签,插入js,标签放在哪里,统计图表就放在哪里! 我现在是稍微改了一下,我自己加了一点js,在页面所有元素都加载完成之后我再动态的把统计js插入到我需要的地方。 统计代码的script是插入成功了,也加载成功了 现在问题来了……… 看chrome的提示: Failed to execute 'write' on 'Document': It isn't possible to write into a document from an asynchronously-loaded external script unless it is explicitly opened. 这怎么回事,何解? 阅读全文
posted @ 2018-07-04 15:35 zock 阅读 (2923) 评论 (0) 编辑
摘要:邮件发送大家都已经非常熟悉了,微软自带的System.Net.Mail也很好用,那为什么还要说呢? QQ邮箱的SMTP以前是非SSL,用未加密的25端口,后来发送都改成SSL了,端口为465或587(实测587是连不上的)。网上查到System.Net.Mail支持Explicit SSL,但是不支持Implicit SSL。简单来说,就是System.Net.Mail不能支持像QQ邮箱这样的加密的SSL,所以我们得改一下,可以用System.Web.Mail这个比较旧的类。 阅读全文
posted @ 2018-07-04 12:37 zock 阅读 (2646) 评论 (1) 编辑
  2017年12月31日
摘要:并发(英文Concurrency),其实是一个很泛的概念,字面意思就是“同时做多件事”,不过方式有所不同。在.NET的世界里面,处理高并发大致有以下几种方法: 1,异步编程 异步编程就是使用future模式(又称promise)或者回调机制来实现(Non-blocking on waiting)。如果使用回调或事件来实现(容易callback hell),不仅编写这样的代码不直观,很快就容易把代码搞得一团糟。 不过在.NET 4.5 及以上框架中引入的async/await关键字(在.NET 4.0中通过添加Microsoft.Bcl.Async包也可以使用),让编写异步代码变得容易和优雅。通过使用async/await关键字,可以像写同步代码那样编写异步代码,所有的回调和事件处理都交给编译器和运行时帮你处理了,简单好用。 使用异步编程有两个好处:不阻塞主线程(比如UI线程),提高服务端应用的吞吐量。所以 阅读全文
posted @ 2017-12-31 12:53 zock 阅读 (17020) 评论 (1) 编辑
  2017年12月18日
摘要:最近遇到一个问题,一个微信公众号,需要在多个域名上使用OAuth2.0网页授权,但微信OAuth2.0网页授权回调域名只能设置一个。 解决办法: 通过多一次的跳转,解决了微信限制回调域名只能设置一个的问题 跳转网页代码get-weixin-code.html:请查看详情 使用方法 1.部署get-weixin-code.html至你的微信授权回调域名的目录下,例如http://wx.abc.com/get-weixin-code.html 2.…… 阅读全文
posted @ 2017-12-18 09:08 zock 阅读 (8499) 评论 (0) 编辑
  2016年9月18日
摘要:使用VMware虚拟机搭建的MacOSX,安装xcode时出现磁盘空间不足的错误。 因为很多朋友在初次安装MacOSX的时候都默认选择40G的磁盘大小,结果用了没两天之后就发现磁盘不够用了。 这时,百度一下你会找到很多相关文章,大体上是正确的,但针对于OS10.10以上的版本就有可能会出现 PCI 外置磁盘大小通过 磁盘工具 无法扩展的问题。 呈现出来的效果,是可以在磁盘工具中看到对应的磁盘已经扩展到目标大小,但是不能进行分区,其中唯一一个MacOSX分区也不能进行抹掉和扩展操作,原因很简单,这是MacOSX的系统盘,所以你不能在系统运行的时候进行操作。而VMware又无法进入MacOSX的恢复分区,所以你只能干瞪眼。 阅读全文
posted @ 2016-09-18 09:11 zock 阅读 (7130) 评论 (1) 编辑
  2016年9月17日
摘要:搜索资料发现,原因是AppleWWDRCA (Apple Worldwide Developer Relations Certification Authority) 证书过期了。 AppleWWDRCA证书实际上就是对iOS证书(即Develop证书和Distribution证书)的授权认证,其公钥用于解密认证证书的可靠性。 iOS以及Mac OS X系统(在安装Xcode时)将自动安装AppleWWDRCA.cer(Apple Worldwide Developer Relations Certification Authority)这个中间证书(Intermediate Certificates)。 阅读全文
posted @ 2016-09-17 16:46 zock 阅读 (650) 评论 (0) 编辑
  2016年5月21日
摘要:iPhone编程中一些非常精致好玩的API都包含在私有API或未公开的API中,虽然我们可以以这种方式使用这些非常好的API,但是这样做是存在一定风险的,首先未公开的API有变更的可能,这样在每个固件版本中,你的代码都有可能中断。同时,最大的问题是使用了私有API的程序是不能放在App Store上销售的。因此如果我们只是为了好玩体验iPhone中这些精彩的API,那没关系。如果是为了做出程序放在App Store上销售的,那就不要动私有API的主意了。 阅读全文
posted @ 2016-05-21 09:13 zock 阅读 (1268) 评论 (0) 编辑