代码改变世界

随笔分类 -  .NET

使用ServiceStack改造我们的项目

2018-02-05 17:47 by dreamhappy, 852 阅读, 收藏, 编辑
摘要: ServiceStack是一个NET环境下的开源框架集合 包括轻量级的Orm框架,数据库访问,Json处理,Redis驱动等多个模块,我们可以按需选择使用 serviceStack.Ormlite serviceStack.Ormlite是一个.NET平台快速实现ORM的数据访问框架,支持多种主流的 阅读全文

C# 调用restful服务开源库

2014-08-30 10:58 by dreamhappy, 5539 阅读, 收藏, 编辑
摘要: .NET环境下我们想调用其它开放平台的服务接口,不需要自己去实现底层,开源的库用起来会很方便hammockhttp://www.cnblogs.com/shanyou/archive/2012/05/01/2478245.htmlhttps://github.com/danielcrenna/ham... 阅读全文

WCF的一点补充-Restful相关

2014-05-31 09:53 by dreamhappy, 248 阅读, 收藏, 编辑
摘要: 参考配置WCF心得对REST架构 风格下WCF的一点补充Securing WCF REST Service with Azure AppFabric Access Control Service and OAuth(WRAP)RESTful API 设计指南使用webclient 发送自定义的数据到... 阅读全文

mono -图片处理

2014-01-09 10:29 by dreamhappy, 4581 阅读, 收藏, 编辑
摘要: 这篇文章中您将了解到以下内容保存BitmapWebClient文件上传向服务端传递数据保存Bitmap做移动端开发,图片上传下载是最普通的需求了。在mono for android中按照资料,下载网络图片的功能需要用流对象把图像转化为Bitmap,之后再保存,刚开始我是这么做的,看如下代码:filepath是网络图片urlURL url = new URL(filePath);HttpURLConnection conn = (HttpURLConnection)url.OpenConnection();Stream stream = conn.InputStream;Bitmap bmp = 阅读全文

网站安全系列:跨站脚本攻击XSS

2013-10-02 13:49 by dreamhappy, 1176 阅读, 收藏, 编辑
摘要: 本篇博文主要从概念和应用上介绍XSS,主要内容来源于《白帽子讲web安全》XSS核心本质XSS实际上是一种HTML注入,用户输入的数据被当成HTML的一部分来执行。防御方法核心是输入检查和输出编码。对于Web应用长见的MVC模式,XSS主要攻击View层。XSS攻击是在用户的浏览器上执行,形成过程则是服务端页面渲染时,注入了恶意的HTML代码导致。在ASP.NET MVC中razor默认会对所有输出进行html编码。这是ASP.NET MVC针对XSS攻击的一道防火墙防御方法一 HttpOnly设置Cookie, 解决Cookie劫持问题,浏览器将禁止页面javascript访问带有HttpO 阅读全文

MVC3权限验证,诡异的OnAuthorization

2013-09-11 22:49 by dreamhappy, 3297 阅读, 收藏, 编辑
摘要: mvc3权限验证protected override void OnAuthorization(AuthorizationContext filterContext) { if (//开始权限验证返回bool) { filterContext.Result = new RedirectResult("/Home/index"); return; } base.OnAuthorization(filterContext);}... 阅读全文

在MVC程序中使用MongoDB数据库

2013-07-26 23:09 by dreamhappy, 2195 阅读, 收藏, 编辑
摘要: .net项目中混搭数据库安装和部署C#中使用MongoDBMongoDb与关系型数据库区别开机自启动关系型数据库和非关系型数据口可以混搭MongoDB是一个高性能,开源,无模式的,基于分布式文件存储的文档型数据库,由C++语言编写,其名称来源取自“humongous”,是一种开源的文档数据库──NoSql数据库的一种。NoSql,全称是 Not Only Sql,指的是非关系型的数据库。MongoDB是基于文档的数据库,持久的缓存MongoDB中数据的基本单元称为文档(Document)。文档是MongoDB的核心概念,多个键极其关联的值有序的放置在一起便是文档。面向集合存储,集合没有行和列的 阅读全文

mvc部署在IIS7上不能访问

2013-05-16 18:32 by dreamhappy, 8000 阅读, 收藏, 编辑
摘要: http://www.yunbx.com/wordpress-published-an-article-automatically-remove-the-comment/ 2013-02-26startMVC的Model模型相当于三层架构中的BLL和DAL,模型表示企业数据和业务规则使用强类型的视... 阅读全文

技术文章索引

2013-04-08 17:38 by dreamhappy, 176 阅读, 收藏, 编辑
摘要: 有价值文章持续更新中WebConfig中去除 不必要的加载模块用Asp.net写自己的服务框架PHP中Session的使用你必须了解的session的本质- 续篇1 – 固定会话id你必须了解的session的本质2013-09-21Html5本地缓存不完全指南jquery 纯html页面之间如何传递参数?JavaScript 的 MVC 模式2013-09-20网站优化——IIS与web.config配置优化深入浅出JSONP--解决ajax跨域问题典型的 SQL 注入过程手动设置 HttpStatusCode 后 Web.config 中 CustomErrors 无效的情况博文集合博客生 阅读全文

WCF-找不到终结点

2013-04-05 00:01 by dreamhappy, 6183 阅读, 收藏, 编辑
摘要: 开发环境:Vs2010SP1 Rel问题:开发WCF服务端新建Wcf服务的过程中,正常的新建了svc服务,在浏览器中打开总是提示找不到终结点解决:添加svc文件时,应该选择WCF服务,而不是WCF数据服务,如果你选择WCF数据服务,生成的svc头命令是<%@ ServiceHost Language="C#" Factory="System.Data.Services.DataServiceHostFactory, System.Data.Services, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b 阅读全文

一个诡异的WCF问题

2013-01-05 16:24 by dreamhappy, 1303 阅读, 收藏, 编辑
摘要: 涉及到的技术概念 WCF,REST,AJAX,JSON遇到的问题:前台页面使用ajax请求后台rest服务,get请求没有问题,post请求时,后台接收参数总是nullrest方法属性,请求参数和返回参数都是json格式#region 创建数据库配置 /// <summary> /// 创建数据库配置 /// </summary> /// <param name="connectionconfig">connectionconfig表实体</param> /// <returns>返回受影响行数</retur 阅读全文

[RESTful web services读书笔记] 接口设计中维持XML和JSON表述的兼容性

2012-12-09 21:13 by dreamhappy, 1008 阅读, 收藏, 编辑
摘要: 分布式的客户端/服务器环境中必然涉及到变更管理,如何维护系统的可扩展性和兼容性?问题描述:需求是持续变化的,在通常的接口设计中,如何保证服务端XML和JSON表述的变更与现有的客户端保持兼容解决方案:保持原有的XMl和JSON数据分层结构整体不发生变化,确保客户端按照之前的调用方法可以继续工作服务端需要把新增的数据元素设计为可选的,以此保持与客户端的兼容性,相对于URI来说,就是URI中添加了新参数时,要继续服务于现有参数,并将新参数视为可选不要修改删除原有的响应正文表述的数据域PS:REST架构风格的最主要驱动是分布性和扩展性。RESTful HTTP接口的设计是由网络因素而非编程语言的绑定 阅读全文

说说程序中的日志

2012-11-07 18:21 by dreamhappy, 6772 阅读, 收藏, 编辑
摘要: 大家在写程序时,如何处理与日志相关的事宜。程序中的日志应该怎么写,以下是我的经验与分享 日志一般用于记录程序运行信息,从而使开发者方便开发调试,了解生产环境执行情况。在我看来程序中的日志主要分为两种:异常日志和非异常日志。那什么样的日志属于异常日志异常日志异常日志可以通过记录日志的地方判断,一般异常日志都涉及到异常捕获,我在写程序时两个地方必定会加异常捕获,而异常捕获是记录异常日志的前提。 1 与数据持久层相关的逻辑 这部分逻辑涉及到数据库访问,可能出现的问题有数据库连接不存在,开发中很容易出现的数据库连接串写错,数据库用户名密码不合法。或者数据库之间混淆,sql错误,数据连接超时... 阅读全文

一步一步实现网站的多语言版本

2012-10-27 22:17 by dreamhappy, 16169 阅读, 收藏, 编辑
摘要: 网站在开发的过程中需要实现多语言版本,我们暂且认为有英语和汉语两个版本。网站结构包括,UI过程,rest服务,以及相应的js,各个部分我们都要实现多语言,不要求一键切换,但是在部署过程中要能实现多与语言配置。首先我们出场的是资源文件,C#的项目实现本地化和区域化,我们要用到资源文件。添加资源文件夹添加资源文件项这里文件的命名最好能规范,如英文版本建议lang.en.resx,汉语版本建议用lang.zh-cn.resx实际使用效果资源文件夹由各个语言版本的资源文件组成,资源文件以.resx后缀和.cs后缀成对出现,其实质是一定规则的Xml文件。这个很容易理解,应用程序通过资源文件实现多语言.. 阅读全文

我的程序优化-尽量减少数据库连接操作

2012-05-02 22:55 by dreamhappy, 7073 阅读, 收藏, 编辑
摘要: 最近做一个项目,做的比较郁闷,现在把项目经验总结在这里。项目的主要功能就是为第三方程序提供数据,并根据客户端的调用提供数据更新。我的程序属于服务端。服务端以站点形式部署,以Xml的数据格式输出。项目以我自己的设计编码完成,并整合测试。初始化数据时,问题出现了。刚开始体现在客户端接受数据很慢。测试环境环境下,数据库服务器部署在国外,网站部署在公司内部,而且我一直认为我的程序在数据库数据处理这里已经做了足够的优化,包括索引和主键已经做到了合理使用。综上所述,起初的速度问题一直没有引起我的关注。然而最后问题的关键恰恰出在数据库连接查询方面,频繁查询导致数据初始化速度很慢。刚开始我采取的方法是即用即查 阅读全文

用LINQ在集合中查询特定对象

2012-05-01 10:59 by dreamhappy, 6845 阅读, 收藏, 编辑
摘要: 这里是原文出处:简单的概括LINQLINQ是Language-Integrated Query的缩写,是C# 3.0和VB 9.0中新加入的语言特性,可以在编程时使用内置的查询语言进行基于集合的操作。List<User> userList = GetUserList();var userWithOddId = from u in userList where u.UserID % 2 == 1 select u; foreach (User u in userWithOddId){ Console.WriteLi... 阅读全文

我的webrequest经验

2012-04-20 17:37 by dreamhappy, 3453 阅读, 收藏, 编辑
摘要: 1 webrequest 是什么:编程方式模拟web请求,利用webrequest可以实现 相当于一个浏览器请求一个网页的效果,但是它始终是模拟请求,与浏览器输入框输入网址请求不一样。2 程序设计中有时有这样的case,需要请求一个url,获得特定网页的部分html代码,比如特定的table,div片段。这个时候可以用代码实现一个httpwebrequest请求,以get的方式请求远程站点的一个url,返回结果是网页的整个html,之后再在结果中提取我们需要的数据。代码如下 #region WebRequest请求url /// <summary> /// W... 阅读全文

一种使用 Javascript 生成html的方法

2012-03-28 22:55 by dreamhappy, 1477 阅读, 收藏, 编辑
摘要: 动态变化前台局部html代码是开发中常见的需求,拼接html代码可以选择前台拼接,也可以选择服务端输出,各有裨益,现在整理如下:1 Javascript直接请求一个ascx用户控件,并获取它的输出HTML http://www.cnblogs.com/fish-li/archive/2011/03/13/1982679.html,主要思想就是在服务端生成所需要的html代码,之后在前台修改dom树,来更改显示内容。 阅读全文

阻止保存要求重新创建表的修改

2012-03-11 11:05 by dreamhappy, 842 阅读, 收藏, 编辑
摘要: 我的电脑数据库版本是Microsoft SQL Server 2008 R2 (RTM) - 10.50.1600.1 (Intel X86) 在用数据库表设计器设计表结构时出现如上错误 阻止保存要求重新创建表的修改解决方法:在菜单栏的工具选项中的设计器选项卡中 取消阻止保存要求重新创建表的修改基于以上出现的问题的扩展,所以有人建议修改表的话最好使用Alter语句,如果使用可视化编辑的话就会将表删除重建 阅读全文