WebEnh

.net7 mvc jquery bootstrap json 学习中 第一次学PHP,正在研究中。自学进行时... ... 我的博客 https://enhweb.github.io/ 不错的皮肤:darkgreentrip,iMetro_HD
  首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

10 2017 档案

摘要:ABP相关岗位招聘:给热爱.NET新技术和ABP框架的朋友带来一个高薪的工作机会 ABP交流会录像视频:ABP架构设计交流群-7月18日上海线下交流会的内容分享(有高清录像视频的链接) 代码自动生成:分享一个与ABP配套使用的代码生成器源码 ABP系列文章总目录: 1、ABP总体介绍 2、ASP.N 阅读全文

posted @ 2017-10-23 15:15 WebEnh 阅读(586) 评论(0) 推荐(0) 编辑

摘要:最近电脑时不时就发生了80端口被占用的情况,简单百度解决后,当重启电脑的时候又发生被占用的情况.今天非常幸运的是,发生了80端口和8080端口都被占用了情况,忍无可忍决定下定决心解决这个坑爹的问题,经过重新百度完美地解决了这个问题,下面贴出解决方法: 一:原文地址: http://www.2cto. 阅读全文

posted @ 2017-10-23 09:46 WebEnh 阅读(448) 评论(0) 推荐(0) 编辑

摘要:1. 什么是跨站请求伪造(CSRF) CSRF(Cross-site request forgery跨站请求伪造,也被称为“One Click Attack”或者Session Riding,通常缩写为CSRF或者XSRF,是一种对网站的恶意利用。尽管听起来像跨站脚本(XSS),但它与XSS非常不同 阅读全文

posted @ 2017-10-19 15:35 WebEnh 阅读(446) 评论(0) 推荐(0) 编辑

摘要:一、前言 之前也阅读过MVC的源码,并了解过各个模块的运行原理和执行过程,但都没有形成文章(所以也忘得特别快),总感觉分析源码是大神的工作,而且很多人觉得平时根本不需要知道这些,会用就行了。其实阅读源码是个很好的习惯,它不只停留在知道怎么用的阶段,而是让我们知道一系列的为什么,为什么这样设计,为什么 阅读全文

posted @ 2017-10-19 15:34 WebEnh 阅读(224) 评论(0) 推荐(0) 编辑

摘要:在Asp.net上,微软的membershop框架经历了Asp.net membership到Asp.net simple membership,再到现在的Asp.net Identity. 每一次改变,都使得验证框架更加的适应变化和可定制。这篇文章是Asp.net Identity系列的开篇,主要 阅读全文

posted @ 2017-10-19 15:33 WebEnh 阅读(256) 评论(0) 推荐(0) 编辑

摘要:Asp.net MVC中的Model自动绑定功能,方便了我们对于request中的数据的处理, 从客户端的请求数据,自动地以Action方法参数的形式呈现。有时候我们的Action方法中想要接收数组类型的参数,如何写表单,使得Model能够自动绑定到数组参数上呢? 看下面的代码,Action方法Up 阅读全文

posted @ 2017-10-19 15:32 WebEnh 阅读(1357) 评论(0) 推荐(0) 编辑

摘要:本来想直接就开始介绍Identity的部分,奈何自己挖坑太深,高举高打的方法不行。只能自己默默下载了Katana的源代码研究了好一段时间。发现要想能够理解好用好Identity, Claims是一个绕不过的内容。今天就和大家一起分享一下什么是Claims以及为什么Identity要基于Claims. 阅读全文

posted @ 2017-10-19 15:32 WebEnh 阅读(303) 评论(0) 推荐(0) 编辑

摘要:有些不得已的时候,我们需要同时在代码中使用某个dll的不同版本。比如用低版本的dll中的方法导出数据,然后使用高版本的方法导入数据来实现数据的升级. 又或者需要同时使用第三方的dll不同版本。如何使它们并存于系统中是个难题。 如果同时存在于系统中,会出现ambiguous refrence(有歧义的 阅读全文

posted @ 2017-10-19 15:31 WebEnh 阅读(472) 评论(0) 推荐(0) 编辑

摘要:SendGrid是一个第三方的解决邮件发送服务的提供商,在国外使用的比较普遍。国内类似的服务是SendCloud.SendGrid提供的发送邮件方式主要是两种, 一种是SMTP API, 一种是Web Api. SMTP API是一种比较简单的方式,只要我们准备好Mail Message, 直接发送 阅读全文

posted @ 2017-10-19 15:28 WebEnh 阅读(929) 评论(0) 推荐(0) 编辑

摘要:最近,客户一直反馈系统使用慢,有时候能够指出具体是哪个页面,有时候又只是笼统地反馈慢。这种问题就像是幽灵一样,非常不好处理。因为导致这种问题的因素非常之多,而且在开发工程中,很难模拟出实际运行是的环境。理论上,对于所有的页面做压力测试是个解决方案,但是这种方式的成本太高,又没有办法很快地定位和解决客 阅读全文

posted @ 2017-10-19 15:27 WebEnh 阅读(232) 评论(0) 推荐(0) 编辑

摘要:Middleware是OWIN管道的基本组成单元,最后拼接的OWIN管道来处理客户端请求,输出网页。这篇文章,首先看看Web Form, MVC, Web API如何结合OWIN使用。 然后将如何编写Middleware和编写一个具体的Cache Middleware. 阅读目录: 一. 原有的We 阅读全文

posted @ 2017-10-19 15:26 WebEnh 阅读(315) 评论(0) 推荐(0) 编辑

摘要:前言 参数验证是一个常见的问题,无论是前端还是后台,都需对用户输入进行验证,以此来保证系统数据的正确性。对于web来说,有些人可能理所当然的想在前端验证就行了,但这样是非常错误的做法,前端代码对于用户来说是透明的,稍微有点技术的人就可以绕过这个验证,直接提交数据到后台。无论是前端网页提交的接口,还是 阅读全文

posted @ 2017-10-19 14:21 WebEnh 阅读(1142) 评论(0) 推荐(0) 编辑

摘要:一、前言 关于表单验证,园子里已经有不少的文章,相信Web开发人员也都基本写过,最近在一个个人项目中刚好用到,在这里与大家分享一下。本来想从用户注册开始写起,但发现东西比较多,涉及到界面、前端验证、前端加密、后台解密、用户密码Hash、权限验证等等,文章写起来可能会很长,所以这里主要介绍的是登录验证 阅读全文

posted @ 2017-10-19 14:20 WebEnh 阅读(355) 评论(0) 推荐(0) 编辑

摘要:接上篇OWIN产生的背景以及简单介绍,在了解了OWIN规范的来龙去脉后,接下来看一下Katana这个OWIN规范的实现,并看看如何使用在我们的Web开发中。 阅读目录: 一. Katana项目的结构和包含的内容 1.1 Host 1.2 Server 1.3 Middleware 1.4 Appli 阅读全文

posted @ 2017-10-19 12:03 WebEnh 阅读(204) 评论(0) 推荐(0) 编辑

摘要:随着VS2013的发布,微软在Asp.Net中引入了很多新的特性,比如使用新的权限验证模块Identity, 使用Async来提高Web服务器的吞吐量和效率等。其中一个不得不提的是OWIN和Katana. OWIN的全称是Open Web Interface For .Net, OWIN是.Net开 阅读全文

posted @ 2017-10-19 12:02 WebEnh 阅读(222) 评论(0) 推荐(0) 编辑

摘要:Cache缓存在计算机领域是一个被普遍使用的概念。硬件中CPU有一级缓存,二级缓存, 浏览器中有缓存,软件开发中也有分布式缓存memcache, redis。缓存无处不在的原因是它能够极大地提高硬件和软件的运行速度。在项目开发中,性能慢的地方常常是IO操作频繁的地方,读取数据库是我们常见的消耗性能的 阅读全文

posted @ 2017-10-19 12:01 WebEnh 阅读(309) 评论(0) 推荐(0) 编辑

摘要:接上文.Net Attribute详解(上)-Attribute本质以及一个简单示例,这篇文章介绍一个非常实用的例子,相信你一定能够用到你正在开发的项目中。枚举类型被常常用到项目中,如果要使用枚举ToString方法直接输出字符串, 常常不是我们想要的输出,因为它是安装定义的名称输出字符串。比如你有 阅读全文

posted @ 2017-10-19 12:00 WebEnh 阅读(242) 评论(0) 推荐(0) 编辑

摘要:Attribute的直接翻译是属性,这和Property容易产生混淆,所以一般翻译成特性加以区分。Attribute常常的表现形式就是[AttributeName], 随意地添加在class, method的头上,然后就能够产生各种各样奇特的效果和行为。比如关于序列化的标签[Serializable 阅读全文

posted @ 2017-10-19 11:59 WebEnh 阅读(351) 评论(0) 推荐(0) 编辑

摘要:发布Asp.net程序的时候,开发环境和发布环境的Web.Config往往不同,比如connectionstring等。如果常常有发布的需求,就需要常常修改web.config文件,这往往是一件非常麻烦的事情。Web.Config Transformation能够在不同的发布环境下,产生不同的web 阅读全文

posted @ 2017-10-19 11:58 WebEnh 阅读(336) 评论(0) 推荐(0) 编辑

摘要:在使用EF的过程中,导航属性的lazy load机制,能够减少对数据库的不必要的访问。只有当你使用到导航属性的时候,才会访问数据库。但是这个只是对于单个实体而言,而不适用于显示列表数据的情况。 这篇文章介绍的是,使用Lazy<T>来提高显示列表页面的效率。 这里是相关的源代码 Performance 阅读全文

posted @ 2017-10-19 11:57 WebEnh 阅读(246) 评论(0) 推荐(0) 编辑

摘要:Asp.net MVC中的提供非常简单易用的数据验证解决方案. 通过System.ComponentModel.DataAnnotations提供的很多的验证规则(Required, StringLength等)。但是常常有这样的需求,我们希望能够把model的验证规则,保存到数据或者xml文件中, 阅读全文

posted @ 2017-10-19 11:56 WebEnh 阅读(227) 评论(0) 推荐(0) 编辑

摘要:最近在重新安装Mysql的时候,发现3306默认端口被占用了。类似的情况常常遇到,想查看到底是哪个程序把这个端口占用了。 下面是我google找到的方法,和大家分享。 1. 首先,使用netstat -aon|findstr "3306"命令,查看3306端口都被哪个进程占用了 下面的PID就是进程 阅读全文

posted @ 2017-10-19 11:56 WebEnh 阅读(715) 评论(0) 推荐(0) 编辑

摘要:小赵是刚毕业的计算机专业方面的大学生,4年的大学时间里面,他读过了很多编程方面的数据,也动手也了很多代码。现在毕业了,他如愿的加入了T公司,开始了自己的程序员生涯。他信心满满,相信自己4年的学习到的东西,一定能够在工作派上用场,帮助自己很快的胜任现在的工作。 阅读目录: 一、Session引发的异常 阅读全文

posted @ 2017-10-19 11:56 WebEnh 阅读(902) 评论(0) 推荐(0) 编辑

摘要:这里说的MySql恢复数据库,是指没有通过正常备份的情况下,通过Mysql保存的数据文件如何恢复数据库。 由于在一台测试机器上打算重新安装Mysql数据库,由于简单粗暴的直接卸载了,没有备份公司Discuz和Redmine使用的Mysql数据库,过程可想的悲惨。 还好的是只是卸载掉了Mysql的程序 阅读全文

posted @ 2017-10-19 11:55 WebEnh 阅读(2390) 评论(0) 推荐(0) 编辑

摘要:开发中遇到的Too high level of nesting for select错误 项目使用了Entity Framework结合Mysql, 遇到了一个非常奇怪的性能问题,一个看起来非常简单的查询通过不了。 报出错误, “Too high level of nesting for selec 阅读全文

posted @ 2017-10-19 11:54 WebEnh 阅读(176) 评论(0) 推荐(0) 编辑

摘要:上篇文章"Asp.net MVC使用Filter解除Session, Cookie等依赖"介绍了如何使用Filter来解除对于Session, Cookie的依赖。其实这个也可以通过Model Binding来达到同样的效果。 什么是Model Binding? Model Binding的作用就是 阅读全文

posted @ 2017-10-19 11:53 WebEnh 阅读(335) 评论(0) 推荐(0) 编辑

摘要:关于Repository模式,在这篇文章中有介绍,Entity Framework返回IEnumerable还是IQueryable? 这篇文章介绍的是使用Entity Framework实现的Repositoy模式设计,欢迎各位拍砖. 阅读目录: 一、实现的思路和结构图 二、Repository设 阅读全文

posted @ 2017-10-19 11:53 WebEnh 阅读(324) 评论(0) 推荐(0) 编辑

摘要:本文,介绍了Filter在MVC请求的生命周期中的作用和角色,以及Filter的一些常用应用场景。 同时针对MVC中的对于Session,Cookie等的依赖,如何使用Filter解依赖。 如果大家有什么好的Filter应用方法,希望一起多交流。 阅读目录: 一、Filter在MVC生命周期中的位置 阅读全文

posted @ 2017-10-19 11:52 WebEnh 阅读(339) 评论(0) 推荐(0) 编辑

摘要:在使用EF的过程中,我们常常使用repository模式,本文就在repository层的返回值是IEnumerable类型还是IQueryable进行探讨。 阅读目录: 一、什么是Repository模式? 二、IEnumerable还是IQueryable的区别 三、实际检验IEnumerabl 阅读全文

posted @ 2017-10-19 11:51 WebEnh 阅读(281) 评论(0) 推荐(0) 编辑

摘要:文章翻译自http://docs.orchardproject.net/Documentation/How-Orchard-works 对Orchard的理解还不深刻,翻译可能有不好的地方. 开发CMS不同于开发其它的web项目,CMS的首要目标就是要支持扩展. Orchard 架构 Modules 阅读全文

posted @ 2017-10-19 11:50 WebEnh 阅读(331) 评论(0) 推荐(0) 编辑

摘要:这里是一些个人感觉本博客里比较值得一看的文章。 开发和常用工具推荐清单 .Net基础 枚举类型转换成字符串 Math.Round和四舍五入 关于DateTime和String转换的容易犯得错误 C#只允许运行应用程序的一个实例的正确写法 .net中的对象序列化(1): 序列化是什么, 以及一个简单的 阅读全文

posted @ 2017-10-19 11:49 WebEnh 阅读(236) 评论(0) 推荐(0) 编辑

摘要:阅读目录: 一、 传统的Asp.net页面问题 二、Asp.net MVC中也存在同样的问题 三、使用PRG模式 四、PRG模式在MVC上的实现 一. 传统的Asp.net页面问题 一个传统的Asp.net页面的请求会是这样的: HTTP GET 请求"Register.aspx" HTTP POS 阅读全文

posted @ 2017-10-19 11:48 WebEnh 阅读(462) 评论(0) 推荐(0) 编辑

摘要:翻译自: http://msdn.microsoft.com/en-us/magazine/hh708754.aspx 动态类型系统 Content item是Orchard中的原子, 比如blog post, pages, products, widgets 探索Content item原子 作为 阅读全文

posted @ 2017-10-19 11:48 WebEnh 阅读(271) 评论(0) 推荐(0) 编辑

摘要:毛主席说过长征是宣言书,长征是宣传队,长征是播种机。那么委托是什么呢? 阅读目录: 一、 委托是函数模板 二、委托是函数指针 三、委托是函数指针集合 四、委托是事件通知 五、委托是外部帮手 六、.net中定义的丰富多彩的委托 一、 委托是函数模板 和类做对比, 类是对象的模板, 那么委托就是函数的模 阅读全文

posted @ 2017-10-19 11:47 WebEnh 阅读(181) 评论(0) 推荐(0) 编辑

摘要:在Asp.net MVC中的使用Ajax, 可以使用通用的Jquery提供的ajax方法,也可以使用MVC中的AjaxHelper。 这篇文章不对具体如何使用做详细说明,只对于在使用Ajax中的一些需要注意或者容易忽略的细节问题做下总结. 1. 注意ajax请求是同步还是异步的 默认的Jquery中 阅读全文

posted @ 2017-10-19 11:46 WebEnh 阅读(262) 评论(0) 推荐(0) 编辑

摘要:阅读目录: 一. 为什么是它们三个 二. 能够任意赋值的原因 三. dynamic的用法 四. 使用dynamic的注意事项 一. 为什么是它们三个? 拿这三者比较的原因是它们在使用的时候非常相似。你可以用它们声明的变量赋任何类型的值。 看看下面的示例: 你还可以使用关键字为它们赋上更加复杂的类型 阅读全文

posted @ 2017-10-19 11:45 WebEnh 阅读(515) 评论(0) 推荐(0) 编辑

摘要:上篇文章"理解C# 4 dynamic(2) – ExpandoObject的使用" 了解了ExpandoObject的基本使用。 但ExpandoObject的问题就是它是一个万金油,什么都可以做,但是又都不专注。 使用DynamicObject正好可以解决这个问题。这篇文章介绍DynamicJs 阅读全文

posted @ 2017-10-19 11:44 WebEnh 阅读(2116) 评论(0) 推荐(0) 编辑

摘要:ExpandoObject的使用非常简单,很容易入手。上一篇里面已经有详细的介绍了,可以看这里(理解C# 4 dynamic(1) - var, object, dynamic的区别以及dynamic的使用)下面对ExpandoObject的使用场合和一些认为需要注意的地方,谈一下自己的看法: 一, 阅读全文

posted @ 2017-10-19 11:44 WebEnh 阅读(218) 评论(0) 推荐(0) 编辑

摘要:Clay非常类似于ExpandoObject, 可以看做是ExpandoObject的加强版. 它们能够让我们在不需要定义类的情况下,就构建出我们想要的对象。Clay和ExpandoObject相比,提供了更加灵活的语法支持,让我们像写javascript代码一样写C#代码,同时还能够用于构建多层级 阅读全文

posted @ 2017-10-19 11:43 WebEnh 阅读(251) 评论(0) 推荐(0) 编辑

摘要:上篇文章Asp.net MVC验证那些事(1)-- 介绍和验证规则使用中,介绍了Asp.net MVC中的验证功能以及如何使用。这里将对MVC中内置的验证规则进行总结。 一,查找所有验证规则 上篇文章中提到,所有的验证规则都是位于下面的命名空间下: using System.ComponentMod 阅读全文

posted @ 2017-10-19 11:42 WebEnh 阅读(294) 评论(0) 推荐(0) 编辑

摘要:表单中的输入项,有些是固定的,不变的验证规则,比如字符长度,必填等。但有些是动态的,比如注册用户名是否存在这样的检查,这个需要访问服务器后台才能解决。这篇文章将会介绍MVC中如何使用【RemoteAttribute】来解决这类验证需求,同时会分析【RemoteAttribute】的不足,以及改进的方 阅读全文

posted @ 2017-10-19 11:42 WebEnh 阅读(334) 评论(0) 推荐(0) 编辑

摘要:数据的有效性验证,是程序开发中必不可少的环节。这篇文章,我们将用一个实例来说明如何在MVC中使用Validation来保证无论是新增或者更新数据的时候,都必须符合我们定义的验证规则,否则就会提示错误。 一, DRY原则 DRY是Don’t repeat yourself的缩写,意思是不要写重复的代码 阅读全文

posted @ 2017-10-19 11:41 WebEnh 阅读(367) 评论(0) 推荐(0) 编辑

摘要:ASP.NET MVC采用Model绑定为目标Action生成了相应的参数列表,但是在真正执行目标Action方法之前,还需要对绑定的参数实施验证以确保其有效性,我们将针对参数的验证成为Model绑定。总地来说,我们可以采用4种不同的编程模式来进行针对绑定参数的验证。 目录 一、手工验证绑定的参数  阅读全文

posted @ 2017-10-19 11:17 WebEnh 阅读(225) 评论(0) 推荐(0) 编辑

摘要:在《ASP.NET MVC下的四种验证编程方式》一文中我们介绍了ASP.NET MVC支持的四种服务端验证的编程方式(“手工验证”、“标注ValidationAttribute特性”、“让数据类型实现IValidatableObject或者IDataErrorInfo”),那么在ASP.NET MV 阅读全文

posted @ 2017-10-19 11:17 WebEnh 阅读(139) 评论(0) 推荐(0) 编辑