pre { /*控制代码不换行*/ white-space: pre; word-wrap: normal; }

分享Entity Framework4.1+MVC3+Jquery EasyUI的DEMO

花了一下午手写了这个Demo,差不多注释下,通俗易懂的Entity Framework4.1+MVC3+Jquery EasyUI的后台管理系统,现分享如下,

        关于Entity Framework4.1+MVC3的基础可以看

        http://www.cnblogs.com/wlflovenet/archive/2011/07/24/EFandMvc2.html

        关于Jquery EasyUI的API文档可以看

        http://www.phptogether.com/juidoc/        中文API说明

        http://www.jeasyui.com/demo/index.php   英文说明及其DEMO  分js和html布局

        http://www.bhcode.net/article/20120327/22427.html  jquery easyui datagrid 分页使用详解

        效果图如下:
 

主要代码如下:

视图部分:

Js部分:

View Code

后台部分:

 

复制代码
#region 产品管理

        /// <summary>
        /// 加载json数组对象
        /// </summary>
        /// <returns></returns>
        public ActionResult LoadProductjson()
        {
            //string sort = Request["sort"].ToString();暂时实现不了动态的字段倒/正排序 除非是sql语句 用Switch显得很臃肿
            //sort = (!string.IsNullOrEmpty(sort) ? sort : "ProductId");
            //string order = Request["order"].ToString();
            //order = (!string.IsNullOrEmpty(order) ? order : "ascending");
            int row = int.Parse(Request["rows"].ToString());
            int pageindex = int.Parse(Request["page"].ToString());
            ProductData Productjson = new ProductData();
            int total;
            Productjson.rows = productBLL.GetProductList(pageindex, row, out total);
            Productjson.total = total;
            string Str = JsonConvert.SerializeObject(Productjson);
            return Content(Str, "text/html;charset=UTF-8");
        }

        /// <summary>
        /// 搜索
        /// </summary>
        /// <param name="collection"></param>
        /// <returns></returns>
        public ActionResult SeachProductInfo(FormCollection collection)
        {
            String Name = collection.Get("ProductName").Trim().ToString();
            //判断空值
            String Id = collection.Get("typeId").ToString();
            int typeId = Convert.ToInt32(String.IsNullOrEmpty(Id) ? "0" : Id); //$("#typeId").combobox("getValue"); 通过这个获取的
                       
            String sid = collection.Get("ProductId").ToString();
            int ProductId = Convert.ToInt32(String.IsNullOrEmpty(sid) ? "0" : sid);

            String NewPrice = collection.Get("RealPrice").ToString();
            int RealPrice = Convert.ToInt32(String.IsNullOrEmpty(NewPrice) ? "0" : NewPrice);

            String en = collection.Get("en").ToString();
            bool? enable = String.IsNullOrEmpty(en) ? null : AdminController.Enable(en);
            //上下两种方法都可以获取数据Request[""]和collection.Get("")

            int row = int.Parse(Request["rows"].ToString());
            int pageindex = int.Parse(Request["page"].ToString());
            ProductData Productjson = new ProductData();
            int total;
            Productjson.rows = productBLL.GetProductsBySerach(pageindex, row, out total, typeId, ProductId, Name, RealPrice, enable);
            Productjson.total = total;
            string Str = JsonConvert.SerializeObject(Productjson);
            return Content(Str, "text/html;charset=UTF-8");
        }

        /// <summary>
        /// 增加
        /// </summary>
        /// <param name="collection"></param>
        /// <returns></returns>
        public ActionResult CreateProduct(FormCollection collection)
        {

            Product info = new Product();
            info.ProductTypeID = Convert.ToInt32(collection.Get("ProductTypeID"));          
            string name=(!string.IsNullOrEmpty(collection.Get("ProductName"))? collection.Get("ProductName") : null);
            info.ProductName = name;
            info.Image = collection.Get("Image");
            info.MarketPrice = Convert.ToInt32(collection.Get("MarketPrice"));
            info.NewPrice = Convert.ToInt32(collection.Get("NewPrice"));          
            string en = collection.Get("Enable").ToString();
            info.Enable = AdminController.Enable(en);
            info.GetDate = DateTime.Now;
            Message msg;
            if (productBLL.GreateProduct(info))
            {
                msg = new Message(true, "添加"+name+"信息成功!");
            }
            else
            {
                msg = new Message(false, "失败,操作有误");
            }

            return Content(JsonConvert.SerializeObject(msg), "text/html;charset=UTF-8");
        }

        /// <summary>
        ///  删除
        /// </summary>
        /// <param name="ids"></param>
        /// <returns></returns>
        public ActionResult RemeProducts(string ids)
        {
            String[] id = ids.Split(',');
            Message msg;
            if (ids != null)
            {
                int i = productBLL.RemeProduct(id);

                if (i > 0)
                {
                    msg = new Message(true, "删除成功");
                }
                else
                {
                    msg = new Message(false, "删除失败");
                }
            }
            else
            {
                msg = new Message(false, "传值失败,请告诉开发者解决");
            }

            return Content(JsonConvert.SerializeObject(msg), "text/html;charset=UTF-8");
        }

        /// <summary>
        /// 更新
        /// </summary>
        /// <param name="id"></param>
        /// <param name="collection"></param>
        /// <returns></returns>
        public ActionResult UpdateProduct(int id, FormCollection collection)
        {

            Product info = new Product();           
            info.ID = id;
            info.ProductTypeID = Convert.ToInt32(collection.Get("ProductTypeID"));
            string name = (!string.IsNullOrEmpty(collection.Get("ProductName")) ? collection.Get("ProductName") : null);
            info.ProductName = name;
            info.Image = collection.Get("Image");
            info.MarketPrice = Convert.ToInt32(collection.Get("MarketPrice"));
            info.NewPrice = Convert.ToInt32(collection.Get("NewPrice"));
            string en = collection.Get("Enable").ToString();
            info.Enable = AdminController.Enable(en);
            info.GetDate = DateTime.Now;
            Message msg;
            if (productBLL.UpdateProduct(info))
            {
                msg = new Message(true, "修改" + name + "信息成功!");
            }
            else
            {
                msg = new Message(false, "修改" + name + "失败!");
            }

            return Content(JsonConvert.SerializeObject(msg), "text/html;charset=UTF-8");
        }

        #endregion
复制代码

在WebConfig文件中修改你的配置地址就可以正常运行了

<connectionStrings>  
  <add name="MyProject" connectionString="Data Source=.;Initial Catalog=MyPorjectBD;Integrated Security=True;Pooling=False" providerName="System.Data.SqlClient"/>
 </connectionStrings>

注意: 最好在vs2010+sql2008运行 ,不要忘记了是MVC3的环境,在项目加载成功后数据库就生成了,所以不要向我要数据库!

                                                                    下载Demo

posted @ 2012-10-15 00:30  monkey's  阅读(370)  评论(0)    收藏  举报