在分层架构中,接口决定了各层中的各个操作类需要实现何种操作。接口也是系统实现多数据库不可缺少的部分。同时,为保证面向对象的特性,接口之间的数据传递主要靠实体类或实体类集合。
这里需要注意的是记得在引用中添加MWC.Entity工程,并且在代码中加上“using MWC.Entity”。
用户对象User接口
Code
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using MWC.Entity;
using System.Data;
namespace MWC.Interface
{
public interface IUser
{
//插入
void Insert(Entity.User user);
//获得列表
DataSet GetList();
//以ID获得user
DataSet GetUserFromID(Guid userID);
//以名称获得user
DataSet GetUserFromName(string userName);
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using MWC.Entity;
using System.Data;
namespace MWC.Interface
{
public interface IUser
{
//插入
void Insert(Entity.User user);
//获得列表
DataSet GetList();
//以ID获得user
DataSet GetUserFromID(Guid userID);
//以名称获得user
DataSet GetUserFromName(string userName);
}
}
部门、群组对象Group接口
Code
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using MWC.Entity;
using System.Data;
namespace MWC.Interface
{
public interface IGroup
{
//插入
void Insert(Entity.Group group);
//获得列表
DataSet GetList();
//以ID获得Group
DataSet GetGroupFromID(Guid groupID);
//以名称获得Group
DataSet GetGroupFromName(string userName);
//获取Group的User
DataSet GetGroupOfUser(Guid groupID);
//加User到Group
void InsertUserToGroup(Guid groupID, Guid userID);
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using MWC.Entity;
using System.Data;
namespace MWC.Interface
{
public interface IGroup
{
//插入
void Insert(Entity.Group group);
//获得列表
DataSet GetList();
//以ID获得Group
DataSet GetGroupFromID(Guid groupID);
//以名称获得Group
DataSet GetGroupFromName(string userName);
//获取Group的User
DataSet GetGroupOfUser(Guid groupID);
//加User到Group
void InsertUserToGroup(Guid groupID, Guid userID);
}
}
接口类将放在MWC.Interface工程下。
注:本实验为了突出重点,相对简化了接口的设计:在实际操作中,业务逻辑层也需要设计接口来统一操作。本实验仅仅针对数据层进行了接口设计。