【转载】使用Json比用string返回数据更友好,也更面向对象一些 |Asp.net MVC 2.0 + Unity 2.0(IoC) + EF4.0 实例:RoRoWoBlog 开源项目框架代码
http://www.cnblogs.com/mecity/archive/2011/09/30/2195075.html NET MVC权限设计思考之切入点
http://www.cnblogs.com/mecity/archive/2011/06/27/2090657.html 了解.net MVC的实现原理Controller/Action
---------------------------------------------------
本开源项目当前使用框架如下:
前台表现:Asp.net MVC 2
数据持久层:ADO.Net Entity Framework 4.0
依赖注入容器:Unity 2.0
开发工具:VS2010
开源项目地址:http://rorowo.codeplex.com/
我这次国庆的时间 主要改了以下内容:
1、改为POCO,使EF的实体纯净
2、增加 IoCHelper类,把IoC的代码改为可以同时支持多种IoC
3、修改基础结构层,使其可以支持多种ORM框架
1、改为POCO,使EF的实体纯净
2、增加 IoCHelper类,把IoC的代码改为可以同时支持多种IoC
3、修改基础结构层,使其可以支持多种ORM框架
4、修正继承自 DefaultControllerFactory 的自定义控制器,使MVC控制器可以支持依赖注入,充分发挥IoC自动装载的特性
5、正式启用规约接口 ISpecification 作为查询条件
项目结构图:
要创建数据库,请在 RoRoWo.Blog.Infrastructure 打开 RoRoWoDB.edmx 模型视图,在视图显示页面中,点击鼠标右键,选择 “根据模型生成数据库”可以得到创建数据库的SQL,然后修改相关Config中的数据库连接字符串就可以了。
数据库默认是 SQL SERVER 2008 ,如果您是 2005 的,请用记事本打开 RoRoWoDB.edmx 文件,将 ProviderManifestToken="2008" 修改为 ProviderManifestToken="2005" ,否则插入数据的操作会出现问题。
欢迎广大技术好友下载源码,一起探讨、拍砖哈!
我更多的希望能通过技术好友,学到更多...
如有在DDD(领域驱动设计)方面感兴趣的朋友,希望加个QQ,我的号码:17020415
在这里我还要感谢两位朋友,一位是 邓智伟(xianrendzw) ,还有一位是 薛飞(xuefly),感谢他们在这个项目中所做出的贡献。
//-------------------------------------------------------------------
【注意】
我发现国内还是有很多朋友对免费的代码管理平台不是很熟悉。
什么是CodePlex?
CodePlex是微软提供的一个源码管理平台,它是集开源社区、版本控制为一体的平台(目前在此平台上的项目必须开源)。
CodePlex可以做什么?
首先,你可以使用TFC或SVN的客户端将你的开发项目签入到CodePlex,而无需自己搭建一个专门的源码管理服务器了;同时你也可以多人一起开发,相互之间可以看到其他成员对代码的修改情况(用过版本控制工具的人都清楚了)。
如何下载最新版本的源码?
如果用户没有Release最新版本,我们如何下载最新版本的源码呢?可以这样:
进入一个开源项目,然后点击“Source Code” 菜单链接,这时我们可以看到最后的一次代码签入日期,和 Change Set 编号,点击最新的编号,将进入一个相关文件签入的列表页面,在上面有“Download”和“Browse” 两个链接,点击“Download”,即可下载当前版本的源码了(你也可以进入到某个日期的一次代码签入,下载过去某天版本的代码)。
//-------------------------------------------------------------------
//http://www.cnblogs.com/huntsoul/archive/2010/05/22/1741400.html (
)
以前的程序:
ViewData["msg"] = "{result:true,FileName:\"" + new FileInfo(Request.Files[0].FileName).Name +
"\",FileUrl:\"" + fileurl.Replace("\"", "") + "\"}";
重构之后的程序:
JsonResult j = Json(new
{
Result = true,
FileName = new FileInfo(Request.Files[0].FileName).Name,
FileUrl = fileurl.Replace("\"", "")
});
ViewData["msg"] = j.Data.ToString();
很明显,第二种方式可读性更强,在性能上第一种略好于第二种,但对于程序来讲,性能只是一方面
在面向对象的程序来讲,它的可能性,编写代码不易出错率也很重要,所以,建议在返回复杂字条符时,使用C#提供的Json,而不需要自己去拼写JS返回的Json格式。
虽功未成,亦未敢藏私,众侠诸神通尽录于此,竟成一笈,名葵花宝典,以飨后世。
邮箱:steven9801@163.com
QQ: 48039387
邮箱:steven9801@163.com
QQ: 48039387