基于EF框架的代码生成器

管理员 3840 次浏览

摘要: 做一个适合自己的代码生成器,C# MVC的方式,控制器、视图页面、BLL层,根据表统一生成。

博客来源于:讯杰设计网:http://blogs.51diysoft.com/blogs

做一个适合自己的代码生成器,C#  MVC的方式,控制器、视图页面、BLL层,根据表统一生成。

blob.png



逻辑层代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;

using {model命名空间};
namespace {EF逻辑层命名空间}
{
    /// <summary>
    /// 
    /// </summary>
    public class {model名称}_BLL
    {
        static EFDbHelper dbHelper = new EFDbHelper();
        /// <summary>
        /// 获取列表
        /// </summary>
        /// <returns></returns>
        public static DataTable GetList(string keyword)
        {
            StringBuilder sqlBuilder = new StringBuilder();
            sqlBuilder.Append(@"SELECT Id, UserName, NickName, CreateTime,Status
FROM dbo.M_UserInfo");
            if (!string.IsNullOrEmpty(keyword))
            {
                sqlBuilder.AppendFormat(" WHERE  UserName like '%{0}%'", keyword);
            }
            return DbHelperSQL.GetTable(sqlBuilder.ToString());
        }
		/// <summary>
        /// 获取列表
        /// </summary>
        /// <returns></returns>
        public static List<{model名称}> GetList(Pagination pagination, string keyword)
        {
            var expression = ExtLinq.True<{model名称}>();
            if (!string.IsNullOrEmpty(keyword))
            {
                expression = expression.And(t => t.Name.Contains(keyword));
            }
            return dbHelper.FindList<{model名称}>(expression, pagination).ToList();
        }
        /// <summary>
        /// 添加
        /// </summary>
        /// <param name="userId"></param>
        /// <returns></returns>
        public static bool SubmitForm({model名称} entity)
        {
            var list = dbHelper.FinList<{model名称}>(p => p.Name == entity.Name).ToList();

            if (list != null && list.Count > 0)
            {
                throw new Exception(string.Format("当前数据已存在。",entity.Name));
            }
            var model = new {model名称}();
            model.Id = Utils.GetNewId();//主键
            //model.NickName = entity.NickName;
            {新增数据部分}
            return dbHelper.Add(model) != null;
        }
        //修改
         public static bool SubmitForm({model名称} entity)
        {
            var model = dbHelper.Fin<{model名称}>(p => p.ID == entity.ID).ToList();
           // model.NickName = entity.NickName;
            {修改数据部分}
            return dbHelper.Add(model) != null;
        }
        /// <summary>
        /// 删除
        /// </summary>
        /// <param name="userId"></param>
        /// <returns></returns>
        public static bool DeleteForm(string ID)
        {
            return dbHelper.Delete<{model名称}>(ID);
        }
		  public static {model名称} GetForm(string Id)
        {
            string sql=string.Format(@"
SELECT * FROM {model名称}
WHERE Id='{0}'",Id);
            return dbHelper.Find<{model名称}>(sql);
        }

        public static DataTable GetFormTable(string Id)
        {
            string sql = string.Format(@"
SELECT * FROM {model名称}
WHERE Id='{0}'", Id);
            return DbHelperSQL.GetTable(sql);
        }
    }
}