前进路上,我们都曾经迷失!

使我停下来的,不是我所见,而是我所未见…… 你能体会吗?那些我看不清的东西,在那延绵不断的城市中,我能看到一切,可就是看不到尽头…… 什么都有,就是没有尽头……而尽头,正是我所未见。—— KimiYang

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

一朋友要交毕业设计,叫我帮他搞个简单的图书管理系统,我反正晚上也没事情,就准备帮他捣鼓一个简单的。由于是毕业设计,因此准备采用在工作中很少使用到的技术来开发,也好给自己练练手,因此选用了Entityframework,spring.net ,asp.net MVC 等技术来开发。以下是我这个项目的工程结构:

 

Common为公共类,主要存放与业务无关的公共类,也包括扩展方法也存放在此类库中。

Domain为领域逻辑层,主要存放领域对象。

DTO为数据传输对象层,主要用来传输数据对象,MVC中Controller到View或者View到Controller的数据传输对象也放在这里面,不在使用ViewData。

Filter为拦截器层次,主要用来控制权限,操作日志的记录等。

Model为模型层次,Entityframework对象,一些枚举对象都放在了此层中。

Repository为数据库持久化层。

 

EntityFrameworkHeper代码:

 

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using Com.Romi.YangXiaoDong.Model;
 6 using Com.Romi.YangXiaoDong.IRepository;
 7 using System.Threading;
 8 
 9 namespace Com.Romi.YangXiaoDong.Repository
10 {
11     /// <summary>
12     /// 持久化基础类
13     /// </summary>
14     public class BaseRepository
15     {
16         private static ThreadLocal<BookManageEntities> threadLocal = new ThreadLocal<BookManageEntities>();
17         #region IBaseQuery 成员
18         /// <summary>
19         /// 打开
20         /// </summary>
21         /// <returns></returns>
22         public BookManageEntities GetSession()
23         {
24             BookManageEntities session = (BookManageEntities)threadLocal.Value;
25             if (session == null)
26             {
27                 session = new BookManageEntities();
28                 threadLocal.Value = session;
29             }
30             return session;
31         }
32         /// <summary>
33         /// 关闭
34         /// </summary>
35         public void CloseSession()
36         {
37             BookManageEntities session = (BookManageEntities)threadLocal.Value;
38             if (session != null)
39             {
40                 session.Dispose();
41             }
42         }
43         #endregion
44     }
45 }

 

 以上代码是仿照java中的Hibernate的帮助类写的。假如各位发现有问题请提出,小弟将感激万分。

这篇文章主要先介绍了这个练手项目的基本结构,下一篇开始将会简单介绍下EntityFramework在这个项目中的简单应用。

一下为源代码,不过只是简单的实现了用户管理功能。

 /Files/kimiyang/BookManage.rar

/Files/kimiyang/Com.Romi.YangXiaoDong.Model.rar

 

posted on 2011-05-09 00:07  KimiYang  阅读(4077)  评论(13编辑  收藏  举报