读书人

请问三层架构

发布时间: 2012-04-01 17:23:46 作者: rapoo

请教三层架构
/// <summary>
/// 数据层操作接口
/// </summary>
/// <typeparam name="T"></typeparam>
public interface IRepository<T> where T : class
{
//获取对像
T Get(object id);
T Get(object id, LockMode lockMode);
T GetEvict(object id);
T LoadFromId(object id);

//添加接口
object Save(T entity);
void Save(T entity, object id);
void SaveByIlist(IList<T> ilist);

//更新接口
void Update(T entity);
void UpdateByIlist(IList<T> ilist);
int Update(string queryString);
void SaveOrUpdate(T entity);

//删除
void Delete(T entity);
int Delete(string queryString);
void DeleteByIlist(IList<T> ilist);

//获取查询列表
IList<T> LoadAll();
IList<T> Find<T>(string queryString);
//IList<T> Find<T>(string queryString, object value);
IList<T> Find<T>(string queryString, params object[] values);
//IList<T> Find<T>(string queryString, object[] values);
IList<T> FindByNamedParam(string queryString, string[] paramNames, object[] values);
IList<T> GetListForPage(string queryString, int currentPage, int pageSize, out int pageCount);

//拆离对象
void Evict(T entity);

//获取查询对像
INHibernateQueryable<T> CreateQuery();
}

这个是怎么实现增删查改的?哪位大侠最好给个类似的三层例子 指导指导 谢了

[解决办法]
你这个连为分层而分层都不算。

先学好怎么应用吧。

一般来说3层 分为 表现层 业务逻辑层 数据层 往往业务逻辑层和数据层很容易搞错界限,也没理论上的定式界线。 我个人理解是为了更好的维护 代码重用 提高效率。


[解决办法]
你问的增删改查是 数据层做的事情。

比如你要做一个登录

表现层 里 有填写用户名 密码等表单。

业务逻辑层 有 一个操作该功能的函数
比如 UserLogin(string UserName)
该函数从前台收集信息 向数据层调用一个对应的函数
return SQLHelper.ExecuteScalarInt(传入SQL语句或存储过程名称,参数)

数据层
返回一个ExecuteScalarInt 处理结果

数据层就是做数据处理用的
比如获取一个 DataSet 比如返回一个查询结果 或者执行一条增删改语句并返回操作结果


[解决办法]
这是 NHibernate 框架实现的 DAL。找一本书看看吧。
[解决办法]

探讨
简单的三层架构我自己有弄过半年(模型层、业务逻辑层、数据访问层) 但是这个没弄过,一塌糊涂 求类似的案例以便新手学习

[解决办法]
居然没贴上地址

http://www.verycd.com/topics/2758955/
[解决办法]
居然没贴上地址

http://www.verycd.com/topics/2758955/

读书人网 >asp.net

热点推荐