Agile.Net 组件式开发平台 - 服务开发示例

在上一篇文章中已经讲解了组件的开发,这篇文章讲解平台服务开发。

Agile.Net开发管理平台项目,已经托管在开源中国码云平台(http://git.oschina.net

登陆码云平台进入项目主页(http://git.oschina.net/MuAgile/AgileDevelop)即可浏览下载源代码。

 

1.开发环境搭建

   软件安装请参考文章《Agile.Net 组件式开发平台 - 开发环境部署》

   下载项目【AgileDevelop】->【附件】中的数据库备份文件,恢复数据库到SqlServer,建议数据库命名"Agile"。

 

2.获取项目源代码

   1. 启动 Microsoft Visual Studio,进入菜单项【工具】->【选项】->【源代码管理】-> 设置选项【当前源代码管理插件】下拉框中选择【Microsoft Git 提供程序】。        

   2. VS切换到团队资源管理器界面,进入菜单项【项目】->【连接到团队项目】。

   3. 在本地Git存储库栏目中,输入Git项目地址,克隆"AgileDevelop"项目。

   4. 关于Git的源代码管理系统的使用方法,请参考相关文档学习。

 

3.创建第一个服务

   1. 新建一个类库命名为"Service.Master",框架版本为Net4.0,引用 Agile.Services.dll, Agile.DataAccess.dll, Agile.Entity.dll 等平台SDK库文件。

   2. 新增一个接口类,声明以下基本方法。

namespace Service.Master
{
    public partial interface IUser
    {
        List<Agile.Entity.BBA1> GetAllUser();

        int AddUser(Agile.Entity.BBA1 entity);

        void UpdateUser(Agile.Entity.BBA1 entity);

        void RemoveUser(Agile.Entity.BBA1 entity);
    }
}

3.新增一个服务类,继承【Agile.Services.ServiceBase】服务基类并实现IUser接口。

namespace Service.Master
{
    public partial class UserService : Agile.Services.ServiceBase, IUser
    {
        /// <summary>
        /// 获取所有员工
        /// </summary>
        /// <returns></returns>
        public List<Agile.Entity.BBA1> GetAllUser()
        {
            return base.DataContext.ScriptById(4001).QueryMany<Agile.Entity.BBA1>();
        }

        /// <summary>
        /// 新增员工
        /// </summary>
        /// <param name="entity"></param>
        public int AddUser(Agile.Entity.BBA1 entity)
        {
            return base.DataContext.Insert<Agile.Entity.BBA1>(entity)
.AutoMap(x => x.BBA01).ExecuteReturnLastId<int>(); } /// <summary> /// 编辑员工 /// </summary> /// <param name="entity"></param> public void UpdateUser(Agile.Entity.BBA1 entity) { base.DataContext.Update<Agile.Entity.BBA1>(entity).AutoMap(x => x.BBA01).Where(x => x.BBA01).Execute(); } /// <summary> /// 删除员工 /// </summary> /// <param name="entity"></param> public void RemoveUser(Agile.Entity.BBA1 entity) { base.DataContext.Delete<Agile.Entity.BBA1>(entity).Where(x => x.BBA01).Execute(); } } }

 

4.至此一个简单的平台服务已经开发完成了,下面咱们来调用试试看。

首先在组件中引用刚创建的服务【Service.Master】,并在组件入口方法里实例化服务,并调用其方法。 

private void UserMgmt_Loading(object sender, PluginArgs args)//组件入口方法
{
    //绑定用户
    var service = Agile.Library.Controller.GetService<Service.Master.IUser>();            
    grc_Employee.DataSource = service.GetAllUser();
    grv_Employee.BestFitColumns();   
}

 

5.运行开发平台测试调用组件。

 

OK运行成功,那么咱们第一个服务【Service.Master】已经开发好了,Agile.Net开发管理平台中包含本案例完整源代码。

 

posted @ 2015-11-20 12:29  青侠oO  阅读(753)  评论(0编辑  收藏  举报