摘要:很多事其实不存在唯一的答案,在这里,有关你,有关我,有关工作。关于平台好平台的诞生一定有它的时代和行业背景,符合了某种大势,顺势而为,让某些方面变得更好。好平台让技术与市场挂钩,市场利润和技术人员收入成正比。好平台是以事件为驱动的,为了完成一件彼此确信的事,平等、自由地工作。现在,在一个固定时间来到... 阅读全文
posted @ 2015-07-25 18:13 Darren Ji 阅读 (493) 评论 (1) 编辑
摘要:最近遇到了这样的场景:每隔一段时间,需要在后台使用队列对一批数据进行业务处理。 Quartz.NET是一种选择,在 .NET Core中,可以使用 执行后台定时任务。在本篇中,首先尝试把队列还原到最简单、原始的状态,然后给出以上场景问题的具体解决方案。 假设一个队列有8个元素。现在abcd依次进入队 阅读全文
posted @ 2019-01-11 14:26 Darren Ji 阅读 (904) 评论 (1) 编辑
摘要:2015年的时候,也是在12月,我和 "Bob" 去北京参加了“全球架构师峰会”,在那次会议上,来自百度、腾讯、阿里巴巴、京东、美团、新浪微博、Twitter等公司的架构师、技术专家们分享了各自在架构方面的实战经验,让我大开眼界。 前几天,在 "张善友" 的公众号“dotNET跨平台”上看到了“胶东 阅读全文
posted @ 2018-12-02 22:51 Darren Ji 阅读 (105) 评论 (0) 编辑
摘要:完全卸载Node.js 1. 首先卸载Node.js应用程序 2. 确认在C:\Program Files中没有Nodejs目录 3. 确认在C:\Program Files (x86)没有Nodejs目录 4. 删除C:\Users\{User}\AppData\Roaming\npm这个目录 5 阅读全文
posted @ 2016-08-01 16:38 Darren Ji 阅读 (1025) 评论 (0) 编辑
摘要:在React中,当涉及组件嵌套,在父组件中使用 把所有子组件显示出来。如下: function ParentComponent(props){ return ( {props.children} ) } 如果想把父组件中的属性传给所有的子组件,该怎么做呢? 使用 帮助方法就可以做到。 比如,把几个R 阅读全文
posted @ 2016-07-07 15:53 Darren Ji 阅读 (7482) 评论 (0) 编辑
摘要:通常,当客户端请求一个包含React组件页面的时候,服务端首先响应输出这个页面,客户端和服务端有了第一次交互。然后,如果加载组件的过程需要向服务端发出Ajax请求等,客户端和服务端又进行了一次交互,这样,耗时相对较长。服务端是否可以在页面初次加载时把所有方面渲染好再一次性响应给客户端呢? 「Reac 阅读全文
posted @ 2016-07-07 14:01 Darren Ji 阅读 (5018) 评论 (0) 编辑
摘要:以下是我整理的React学习资料,包括:React基础、Redux、reat router, redux middleware, higher order components, React验证等, 来自于Udemy、EggHead和 , 是我跟随视频step by step的方式实践出来的一个个项 阅读全文
posted @ 2016-06-24 20:24 Darren Ji 阅读 (538) 评论 (1) 编辑
摘要:创建一个空目录,在其中初始化git git init 创建一个新文件,此时默认在master分支上 touch file1.txt add到staging area git add file1.txt 提交变化 git commit m 'the first commit' 创建一个新的分支 git 阅读全文
posted @ 2016-05-31 18:21 Darren Ji 阅读 (2219) 评论 (0) 编辑
摘要:【起初的准备工作】 npm init npm install save react react dom npm install save dev html webpack plugin webpack webpack dev server babel core babel loader babel 阅读全文
posted @ 2016-05-30 13:57 Darren Ji 阅读 (640) 评论 (0) 编辑
摘要:用Webpack(npm install g webpack)代码打包,Webpack大致需要知道三件事: 1)让Webpack知道应用程序或js文件的根目录 2)让Webpack知道做何种转换 3)让Webpack知道转换后的文件保存在哪里 具体来说,大致要做以下几件事情: 1)在项目根目录下有一 阅读全文
posted @ 2016-05-18 20:34 Darren Ji 阅读 (2771) 评论 (1) 编辑
摘要:对React有一定了解之后,我们知道,需要把JSX文件转换成JS文件,组件需要导入导出。本篇就体验使用Gulp把JSX文件转换成JS文件,使用Browserify来把组件捆绑到一个文件并理顺组件之间的依赖关系。 Gulp是用来干嘛的呢?用来把Coffeescript, SASS, JSX等转换成浏览 阅读全文
posted @ 2016-05-18 15:43 Darren Ji 阅读 (2226) 评论 (1) 编辑
摘要:这是React分类下的第一篇文章,是在了解了一些基本面后,看 "Tyler" 文章,边看边理解边写的。 React可以看做是MVC中的V,关注的是视图层。React的组件就像Angular的Directive,包括了HTML,CSS,JS以及相关数据等。React的组件被定义在了以"JSX"为后缀的 阅读全文
posted @ 2016-05-17 20:14 Darren Ji 阅读 (472) 评论 (0) 编辑
摘要:Browserify是一个Javascript的绑定工具,帮助我们理顺module之间的依赖关系。Gulp用来优化workflow。两者的共同点都是使用流,但在使用流方面也有不同之处: Browserify只要接受文件内容即可 Gulp不但接受文件内容,还需要接受源文件信息,然后把源文件写到一个目标 阅读全文
posted @ 2016-05-14 12:21 Darren Ji 阅读 (3043) 评论 (0) 编辑
摘要:"Browserify" 是一个Javascript的库,可以用来把多个Module打包到一个文件中,并且能很好地应对Modules之间的依赖关系。而Module是封装了属性和功能的单元,是一个Javascript对象,Modules之间可以相互依赖。某种程度上来说,Browserify模仿了Nod 阅读全文
posted @ 2016-05-14 10:17 Darren Ji 阅读 (348) 评论 (0) 编辑
摘要:需要扩展IQueryable<T>,参数包括一个DateTime类型的属性、开始日期、截止日期。 现在可以筛选满足某个日期范围内的集合。比如: 阅读全文
posted @ 2016-04-12 16:47 Darren Ji 阅读 (1593) 评论 (0) 编辑
摘要:有这样的两个集合: string[] bigArr = new string[] { "a", "b", "c" };string[] smallArr = new string[] { "a", "b"}; 现在需要判断smallArr是否是bigArr的子集。只要拿着bigArray和small 阅读全文
posted @ 2016-04-09 11:52 Darren Ji 阅读 (944) 评论 (0) 编辑
摘要:我们是否可以把从前端接受的JSON字符串转换成字典集合呢?比如从前端接收:{'size':'10', 'weight':'10kg'}在服务端转换成:[{size:"10"},{weight:"10kg"}]这样的字典集合通过Newtonsoft的DeserializeObject<Dictiona 阅读全文
posted @ 2016-03-19 20:27 Darren Ji 阅读 (6657) 评论 (0) 编辑
摘要:本篇体验ASP.NET Web API的安全管道。这里的安全管道是指在请求和响应过程中所经历的各个组件或进程,比如有IIS,HttpModule,OWIN,WebAPI,等等。在这个管道中大致分两个阶段,一个是验证阶段,另一个是授权阶段。在ASP.NET Web API v1版本的时候,安全管道大致 阅读全文
posted @ 2016-03-17 23:49 Darren Ji 阅读 (1451) 评论 (0) 编辑
摘要:→ 运行Git Bash→ 创建SSH公匙和私匙ssh-keygen -t rsa→ 输入SSH公匙存放文件,选择使用默认的,按Enter→ 如果已经存在,提示是否重写,输入n,按Enter→ 打开C:\Users\Darren\.ssh中的id_rsa.pub文件,这个就是SSH公匙了另外,C:\ 阅读全文
posted @ 2016-03-17 15:02 Darren Ji 阅读 (550) 评论 (0) 编辑
摘要:本篇体验Git Bash在Windows操作系统上的用法。什么是Bash?是一个Shell环境,Bourne Again Shell的缩写。安装git for windows→ http://git-for-windows.github.io/→ Download,选择一个合适的版本→ 安装→ 安装 阅读全文
posted @ 2016-03-17 10:39 Darren Ji 阅读 (9531) 评论 (1) 编辑
摘要:项目中用到了EF Code First和迁移,但发现有些方面似懂非懂。比如:如何在迁移文件中控制迁移过程?如果在迁移文件中执行SQL语句?如何使用Update-Database的其它参数?数据库在生产环境的时候如何迁移?于是就有了下面的这些体验:enable-migration第一次生成数据库时使用 阅读全文
posted @ 2016-03-17 00:47 Darren Ji 阅读 (479) 评论 (0) 编辑
摘要:  添加→ 方法参数中有一个有关添加视图模型类型的形参,比如vm→ 根据vm的某个属性,比如Name判断在上下文中是否存在,如果不存在就抛EntityNotFoundException异常→ 判断vm所依赖的外键那对应的那个实体是否存在,比如vm中有各PoductCategoryId外键,就判断下上 阅读全文
posted @ 2016-03-15 10:30 Darren Ji 阅读 (644) 评论 (0) 编辑
摘要:  大致是:var products = db.Products.Select(new ProductVm{Name=SomeMethod() });针对IQueryable集合的查询操作会被LINQ Provider编译成SQL语句,此时,是无法识别方法的。解决办法:把数据放到内存中,再调用方法v 阅读全文
posted @ 2016-03-14 10:01 Darren Ji 阅读 (250) 评论 (0) 编辑
摘要:  本篇体验扩展StringBuilder使之支持链式方法。这里有一个根据键值集合生成select元素的方法。     以上,html.AppendFormat("<select id=\"{0}\" name=\"{0}\">", id);html.AppendLine();可以对这两个语句封装, 阅读全文
posted @ 2016-03-13 12:49 Darren Ji 阅读 (518) 评论 (0) 编辑
摘要:  使用C#实现加减乘除算法经常被用作新手练习。本篇来分别体验通过委托、接口、匿名方法、泛型委托来实现。 加减乘除拥有相同的参数个数、类型和返回类型,首先想到了使用委托实现。     以上,委托用在了方法层面。如果在类层面,也可用接口封装加减乘除的共性。     委托还可以结合匿名方法一起使用。   阅读全文
posted @ 2016-03-13 00:47 Darren Ji 阅读 (2636) 评论 (5) 编辑
摘要:  在函数式编程中,可以把函数看作数据。函数也可以作为参数,函数还可以返回函数。比如,LINQ就是基于函数式编程的。 语句式编程可能这样写:   而使用函数式表达式,可以简化为:   再来看一个过滤和排序的例子:   函数式编程可以写成如下:   或   可见,在LINQ中,一个表达式(函数)的返回 阅读全文
posted @ 2016-03-12 23:56 Darren Ji 阅读 (457) 评论 (1) 编辑
摘要:当应用程序需要和磁盘上的文件打交道的时候,就有了流的概念。流就像架设在应用程序所在内存和磁盘之间的一个管道。 大致思路 → 建立管道 //FileMode.Open打开现有文件,另外还有FileMode.Create, FileMode.Append //FileAccess表示对文件的操作权限Fi 阅读全文
posted @ 2016-03-08 10:07 Darren Ji 阅读 (1070) 评论 (0) 编辑
摘要:当使用Entity Framework添加一对多关系数据的时候,通常先添加一的数据,然后再添加多的数据。类似这样: //添加一的数据 var category = new Category{Name="类别1"}; category = context.Categories.Add(category 阅读全文
posted @ 2016-03-03 10:06 Darren Ji 阅读 (673) 评论 (0) 编辑
摘要:ASP.NET Web API中的action参数类型可以分为简单类型和复杂类型。HttpResponseMessage Put(int id, Product item)id是int类型,是简单类型,item是Product类型,是复杂类型。简单类型实参值从哪里读取呢?--一般从URI中读取所谓的 阅读全文
posted @ 2016-02-28 00:44 Darren Ji 阅读 (1779) 评论 (2) 编辑
摘要:ASP.NET Web API的模型验证与ASP.NET MVC一样,都使用System.ComponentModel.DataAnnotations。具体来说,比如有:[Required(ErrorMessage="")][Range(0, 999)][Bind(Exclude="")][Disp 阅读全文
posted @ 2016-02-27 22:42 Darren Ji 阅读 (1217) 评论 (0) 编辑
摘要:1、字符集:Javascript采用Unicode字符集,支持地球上所有在用的语言。2、区分大小写:Javascript区分大小写,HTML不区分大小写。3、空格、换行、格式控制符:Javascript忽略空格、换行,可以采用整齐、一致的缩进来形成统一的编码风格。4、Unicode转义序列:使用6个 阅读全文
posted @ 2016-02-26 14:41 Darren Ji 阅读 (543) 评论 (0) 编辑
摘要:场景是这样的:Order下有一个Suppler的集合,即一个订单下可能有多个供应商;Supplier下有一个Product的集合,即对一个供应商采购多个产品。需求是这样的:算出所有订购产品的总价模型这样: public class Order { public int OrderId { get; 阅读全文
posted @ 2016-02-25 11:09 Darren Ji 阅读 (512) 评论 (2) 编辑
摘要:主要是想把日期和其它因素考虑进来。 使用RNGCryptoServiceProvider类创建唯一的最多8位数字符串。 private static string GetUniqueKey() { int maxSize = 8; int minSize = 5; char[] chars = ne 阅读全文
posted @ 2016-02-24 15:55 Darren Ji 阅读 (1110) 评论 (0) 编辑
摘要:1、下载git?git-scm.com2、获取帮助git helpgit help config3、什么是Git?版本控制系统,Version Control System, VCS。它允许我们提交变化到源代码管理库,并且跟踪变化。允许develope在同一套代码库上协同工作。是现代的、分布式版本控 阅读全文
posted @ 2016-02-20 22:57 Darren Ji 阅读 (773) 评论 (0) 编辑
摘要:当发出GET请求:GET http://localhost:54176/api/Products报如下错:{ "message": "找不到与请求 URI“http://localhost:54176/api/Products”匹配的 HTTP 资源。", "messageDetail": "未找到 阅读全文
posted @ 2016-02-19 10:10 Darren Ji 阅读 (8109) 评论 (5) 编辑
该文被密码保护。
posted @ 2016-02-18 20:24 Darren Ji 阅读 (3) 评论 (0) 编辑
摘要:RAML是Restful API Modeling Language的缩写,是用来描述API信息的文档。 创建一个.raml后缀的文件,用Atom打开。 基本用法 #%RAML 0.8 title: Book API baseUri: http://api.book.com/{version} ve 阅读全文
posted @ 2016-02-18 16:12 Darren Ji 阅读 (5742) 评论 (1) 编辑
摘要:如何查看查询字符串?→输入包含查询字符串的URL,比如:http://localhost:54176/api/ProductCategories?name=darren&age=25→点击Params,查询字符串以键值队集合的形式存储→选中键值对,右键选择"EncodeURIComponent"可以 阅读全文
posted @ 2016-02-17 13:28 Darren Ji 阅读 (1784) 评论 (0) 编辑
摘要:Javascript也是面向对象的语言,但它是一种基于原型Prototype的语言,而不是基于类的语言。在Javascript中,类和对象看起来没有太多的区别。 通常,这样创建一个对象: function person(name){ this.sayHi = function(){ alert('h 阅读全文
posted @ 2016-02-16 15:52 Darren Ji 阅读 (1184) 评论 (2) 编辑
摘要:通常,在AngularJS中使用JSON作为存储数据的模型。我们可能这样在controller中写model: app.controller('BookController',['$scope',function($scope){ $scope.book = { id:1, name:'', aut 阅读全文
posted @ 2016-02-16 15:18 Darren Ji 阅读 (693) 评论 (0) 编辑
摘要:本篇体验使用AngularJS自定义一个记录日志的服务。 在AngularJS中,服务的一些写法是这样的: var app = angular.module('app',[]); app.provider('providerName', function(){...}); app.service(' 阅读全文
posted @ 2016-02-16 14:19 Darren Ji 阅读 (585) 评论 (0) 编辑

我的公众号:新语新世界,欢迎关注。