代码改变世界

随笔档案-2012年03月

Asp.net MVC Model设置为string类型时报错:Illegal characters in path

2012-03-23 15:23 by Fred-Xu, 697 阅读, 收藏,
摘要: 如果你将一个页面的Model设置为string类型,那么你会碰到这个错误:Illegal Characters in path似乎很奇怪,或许你甚至都不知道造成这个错误的原因是因为Model类型为string。实际上,你得到上面的错误原因是在你的Controller中,你通常调用View方法传送这个model作为唯一的参数并且这个model的值是string类型。但是你可能没有注意到View方法同样也有另外一个重载就是接受一个string作为这个View的名字。所以如果你传送这个model如下代码:return View("myStringModel");上面的代码中,你特 阅读全文

使用Google Weather API获取天气预报,中文支持

2012-03-23 11:48 by Fred-Xu, 2126 阅读, 收藏,
摘要: 这里我们使用asp.net来获取当地天气、时间信息前端页面:<%@ Page Title="" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="GoogleWeatherAPI.aspx.cs" Inherits="EnhancementLot4.Tests.GoogleWeatherAPI" %><asp:Content ID="Con 阅读全文

使用jquery.validate submitHandler必须点击两次才能提交表单

2012-03-21 20:21 by Fred-Xu, 14258 阅读, 收藏,
摘要: 在开发中遇到了这样一个问题,Form表单需要有两个按钮来做验证,如图所示:左边按钮直接提交给当前Form表单,右边按钮则是要使用Ajax来异步提交表单,保持页面不刷新跳转。表单验证我们使用了jquery.validate插件,表单异步提交使用了jquery.form插件配合前者,代码如下:左边按钮点击后会执行validate方法,验证通过后form.submit进行提交;而右边按钮点击执行validate通过后,则使用jquery.form的api来做submit,这个时候问题出来了,需要点击两下右边按钮才能执行异步提交Form,ORZ....通过g搜索,找到了解决方法,只要将代码删除即可。$ 阅读全文

根据值获取Enum枚举

2012-03-14 17:02 by Fred-Xu, 15324 阅读, 收藏,
摘要: 前台Post过来一个string类型的int值,"1","2",然后实体对象是一个Enum枚举类型,所以需要根据该数值的string获取到这个Enum枚举对象的值。EnumItems enumItem = (EnumItems)Enum.Parse(typeof(EnumItems), ddl.SelectedValue);qc.State = (OrderQcState)Enum.Parse(typeof(OrderQcState), qc.Result);很简单,使用Enum.Parse方法解决。参考:http://www.dukebaby.net/ 阅读全文

Asp.net获取客户浏览器信息,Chrome名称不匹配问题

2012-03-09 15:34 by Fred-Xu, 854 阅读, 收藏,
摘要: 公司要自己做一套简单的网站统计系统,主要统计客户浏览器的一些信息,记录浏览器名称,主要版本,是否支持Java Script等信息,我们在.Net Framework 3.5下新建了一个Web项目,使用下面的代码来获取客户浏览器名称:Request.Browser.Browser问题出现了,在Chrome浏览器下,获取到的浏览器名称是AppleMAC-Safari,而不是Chrome,其它诸如IE,Firefox都是正常的。灰常抓狂!!!于是乎把Web项目改到.Net Framework 4.0框架,问题解决。 阅读全文

Fluent NHibernate+MySQL插入数据中文乱码问题

2012-03-08 21:11 by Fred-Xu, 1156 阅读, 收藏,
摘要: 一.环境准备:1. 安装.NETFrameWork 4.02. 安装MySQL 5.0.xwww.mysql.com3. 安装Mysqlconnectorfor.Net1.0 www.mysql.com二.问题描述:如题三.问题分析:Mysql从4.1以后开始支持多编码。用因为MySQL是瑞典人开发的,所以安装MySQL默然是latin1。而我们中文操作系统环境下用到的默认是GB2312.这样我们不管在查询数据库中文数据时,数据库转换字符时就会出现混乱。四.问题解决:通一数据库表和字段使用utf8字符集。具体方法:1) 在创建数据表时,先执行如下语句:setcharacter_... 阅读全文