Asp.net Mvc+MongoDB+Autofac等打造轻量级blog系统(一)
2011-03-24 17:02
465 查看
这两天坐地铁上在想着是否可以做一个很轻量级的.net博客发布系统。。。所有东西都用轻量级的,我想要系统是基于Asp.net Mvc框架的,所以选定了如下几个大的组件来完成这个设想。
1. 整个应用程序架构:asp.net mvc 3 (Razor)
2.数据存储 : MongoDB,是个面向文档的数据库,它是多系统支持,轻量级,高性能的。
3.ORM : 现在的应用开发如果你不用ORM,那就好像有点老土了,但是ORM永远都无法和ado.net媲美,无乱是EF,NHibernate还是linq等等。。。。而我这里还是想使用一个ORM工具,于是选择了Simple.Data这个非常轻量级的ORM工具,它使用了C# 中的Dynamic特性。
4.IoC工具,绝对是autofac这个最轻量级了。。。
对于asp.net mvc你可以到这里看到很多学习资料:http://www.cnblogs.com/n-pei/tag/Asp.net%20MVC/
包括asp.net mvc 3的系列文章。。。。
环境的要求:
1.首先你需要的是.net framework 4的安装。你机器不需要安装asp.net mvc,只需要把对应的几个dll添加到bin目录下就行。
2.MongoDB的安装 如果你以前接触过MongoDB,请跳过这一段,直接看第三步。
http://www.mongodb.org/ 它的数据是以json格式存储的。
下载到对应的压缩包,然后解压到某个盘下。
默认的mongo是不会自己创建文件夹,而它却需要找到指定的文件夹Data\db,所以我们需要在bin目录所在的根文件夹下创建如下文件夹:
接下来就是运行db server了。
现在数据库服务器就开始运行了,因为它是在dos下运行的,所以不能关闭这个窗口,以后说明下如何把它制定为windows service,这样就需要开着窗口了。
3.ORM: Simple.Data这个是使用C# Dynamic属性的轻量级ORM工具,它不是很好用,但是速度是挺快的,而且不需要配置文件,支持各种数据库。。。
你可以到这里下载:http://github.com/markrendle/Simple.Data
4. IoC工具,这个Autofac我之前有好多文章都介绍了。你可以到这里下载和查看:http://code.google.com/p/autofac/
我博客中相关的文章: http://www.cnblogs.com/n-pei/tag/Autofac/
可能你已经不耐烦了,,我啰嗦这么多,,好吧,接下来开始使用MogonDB,这篇文章主要介绍如何在asp.net mvc中使用它。。。。其它模块在以后的文章中介绍。
首先是创建实体,这里只创建好Post和comment两个实体。
接下来是创建Repository模块:
Post的Repository接口:
对应的Save方法:
这里的操作都是比较繁琐的,以后会结合autofac优化这一部分。
GetAll方法和通过Id得到某个post实体的方法如下:
还有一部分是update某个post.这部分代码就不贴了。
接下来是Controller部分的代码:
Create post部分的代码:
添加对应的View以后,运行:
点击Craete按钮后:
保存成功,然后会自动跳转到List页面:
稍候等整个项目写的差不多了,我会把代码放到codeplex上,支持下微软,呵呵。
1. 整个应用程序架构:asp.net mvc 3 (Razor)
2.数据存储 : MongoDB,是个面向文档的数据库,它是多系统支持,轻量级,高性能的。
3.ORM : 现在的应用开发如果你不用ORM,那就好像有点老土了,但是ORM永远都无法和ado.net媲美,无乱是EF,NHibernate还是linq等等。。。。而我这里还是想使用一个ORM工具,于是选择了Simple.Data这个非常轻量级的ORM工具,它使用了C# 中的Dynamic特性。
4.IoC工具,绝对是autofac这个最轻量级了。。。
对于asp.net mvc你可以到这里看到很多学习资料:http://www.cnblogs.com/n-pei/tag/Asp.net%20MVC/
包括asp.net mvc 3的系列文章。。。。
环境的要求:
1.首先你需要的是.net framework 4的安装。你机器不需要安装asp.net mvc,只需要把对应的几个dll添加到bin目录下就行。
2.MongoDB的安装 如果你以前接触过MongoDB,请跳过这一段,直接看第三步。
http://www.mongodb.org/ 它的数据是以json格式存储的。
下载到对应的压缩包,然后解压到某个盘下。
默认的mongo是不会自己创建文件夹,而它却需要找到指定的文件夹Data\db,所以我们需要在bin目录所在的根文件夹下创建如下文件夹:
接下来就是运行db server了。
现在数据库服务器就开始运行了,因为它是在dos下运行的,所以不能关闭这个窗口,以后说明下如何把它制定为windows service,这样就需要开着窗口了。
3.ORM: Simple.Data这个是使用C# Dynamic属性的轻量级ORM工具,它不是很好用,但是速度是挺快的,而且不需要配置文件,支持各种数据库。。。
你可以到这里下载:http://github.com/markrendle/Simple.Data
4. IoC工具,这个Autofac我之前有好多文章都介绍了。你可以到这里下载和查看:http://code.google.com/p/autofac/
我博客中相关的文章: http://www.cnblogs.com/n-pei/tag/Autofac/
可能你已经不耐烦了,,我啰嗦这么多,,好吧,接下来开始使用MogonDB,这篇文章主要介绍如何在asp.net mvc中使用它。。。。其它模块在以后的文章中介绍。
首先是创建实体,这里只创建好Post和comment两个实体。
接下来是创建Repository模块:
Post的Repository接口:
对应的Save方法:
这里的操作都是比较繁琐的,以后会结合autofac优化这一部分。
GetAll方法和通过Id得到某个post实体的方法如下:
还有一部分是update某个post.这部分代码就不贴了。
接下来是Controller部分的代码:
Create post部分的代码:
添加对应的View以后,运行:
点击Craete按钮后:
保存成功,然后会自动跳转到List页面:
稍候等整个项目写的差不多了,我会把代码放到codeplex上,支持下微软,呵呵。
相关文章推荐
- Asp.net Mvc+MongoDB+Autofac等打造轻量级blog系统(二)
- ASP.NET MVC 下打造轻量级的 Theme 机制
- 使用asp.net mvc 创建一个blog发布系统
- OXite 微软一款基于asp.net mvc架构的blog内容管理系统
- ASP.NET MVC 下打造轻量级的 Theme 机制
- Asp.Net MVC 之 Autofac 初步使用2 集成mvc 属性注入以及自动注入
- NHibernate3.3.0GA+ExtJS4.1.1+ASP.NET MVC3.0权限管理系统(5)-ASP.NET MVC的引入
- ASP.NET MVC路由系统的核心对象介绍
- ASP.NET MVC Linq 技术 企业级通用OA系统 全程开发
- ASP.NET MVC Controller激活系统详解:默认实现
- 依赖注入容器Autofac和 ASP.NET MVC 3 的集成
- 在asp.net mvc 中使用Autofac
- asp.net mvc3开发系统点滴之二
- 架构之路之spring+springmvc+maven+mongodb的搭建(转载:http://blog.csdn.net/tomcat_2014/article/details/55100130)
- Asp.net mvc 集成Autofac和FluentValidation
- 基于ASP.NET MVC+Linq等技术下的企业级通用OA系统全程开发
- asp.net mvc+jquery easyui开发实战教程之网站后台管理系统开发4- 后台模板html页面创建
- 一步一步使用Ext JS MVC与Asp.Net MVC 3开发简单的CMS后台管理系统之调整首页显示
- Asp.net MVC 3 开发一个简单的企业网站系统
- Asp.Net MVC 之 Autofac 初步使用3 集成web api