MVC中的MODEL除了LINQ,还可以用什么?因为LINQ确实不是很熟练,不敢拿来用先。

解决方案 »

  1.   

    其实什么都可以用,只是默认用的linq
      

  2.   

    不一定要用LINQ的吧?用回以前三层构架那种,找个生成器生成代码。
      

  3.   

    什么都可以用,而且也没有默认用"linq"什么的啊....
      

  4.   

    我正好做了一个MVC的例子,使用自己的ORM做的Model,可供楼主参考:
    使用ASP.NET MVC2+PDF.NET 构建一个简单的新闻管理程序
      

  5.   

    哪有 默认之说, MVC 跟linq 没有什么关系。
     至于数据层,你新建一个层就是了,用ADo.net 还是linq 随你喜好。
      

  6.   

    model和linq没关系,想用什么用什么
      

  7.   

    但见好多例子MODEL里边都是LINQ 这种语法操作数据库?
      

  8.   

    是啊,模型(M)全部是用LINQ这种语法 from x select x .var 这种。怎么不是用传统的?
      

  9.   

    CYQ.Data 数据框架,Model换成枚举了。
    本框架使用简单,可操作多种数据库,还支持在mono下跨平台使用。
      

  10.   

    我想,楼主是不是指的asp.netMVC啊,
    asp.netMVC不是MVC!就好像脑黄金不是黄金,连金属都不是
    MVC更加和linq没有任何关系在面向对象中,不仅需要发现对象,比如view,model
    而且需要发明对象,比如controller,
    其实你可以给这些对象起任何名字,不一定非叫view,model,
    只要你的设计引入了"发明的控制类对象"来改善其他组件之间的关系,
    那就是MVC的;
    并且,model应该针对行为建模,而不是针对数据建模
      

  11.   

            public static List<BlogEntry> GetList(int StartRow, int PageSize)
            {
                var query = (from blogentry in db.blogentries where blogentry.private == false orderby blogentry.datepublished descending select blogentry).Skip(StartRow ).Take(PageSize);
                List<BlogEntry> result = new List<BlogEntry>();
                foreach (var t in query)
                    result.Add(FillRecord(t));
                return result;
            }        public static List<BlogEntry> GetList()
            {
                var query = (from blogentry in db.blogentries 
                             where blogentry.private == false
                             orderby blogentry.datepublished descending select blogentry);            List<BlogEntry> result = new List<BlogEntry>();
                foreach (var t in query)
                    result.Add(FillRecord(t));
                return result;
            }全部是LINQ表达式吧。大家怎么说没关系呢?
      

  12.   

    16楼的代码跟MVC没任何关系,连面向对象的设计都谈不上,
    同样是最普通的获取数据的方法,去被你写出2个(N个)方法,
    你看看你列出的2个函数的代码是一模一样的!
    你的代码量和你的所谓对象成正比,不是收敛的
      

  13.   

    model最好是对行为建模,而不是数据,比如这样:
    public partial class OrdinaryModel : AppCenter3.IModel.IOrdinaryModel {
            #region constructors
            public OrdinaryModel(string pAppKey, string pFormName) {
                #region 参数预处理
                pAppKey = MyHelper.ToString(pAppKey);
                if(pAppKey == "") throw new MyException("参数pAppKey不能为空");
                pFormName = MyHelper.ToString(pFormName);
                if(pFormName == "") throw new MyException("参数pFormName不能为空");
                #endregion 参数预处理
                this.FormName = pFormName;
                this.GetFormMethod(pAppKey, pFormName);
                }
            #endregion constructors        #region interface members
            public StyleSoft.Common3.Models.MethodModel MethodSearch { get; set; }
            public StyleSoft.Common3.Models.MethodModel MethodInsert { get; set; }
            public StyleSoft.Common3.Models.MethodModel MethodUpdate { get; set; }
            public StyleSoft.Common3.Models.MethodModel MethodDelete { get; set; }
            public StyleSoft.Common3.Models.MethodModel MethodSearchById { get; set; }        #endregion interface members        }//end class
        }//end namespace
      

  14.   

    以上的例子中的model可以用在任何项目的
    基于增删改查的处理的所有业务中,
    代码量并不伴随着"实体"的增加而增加
      

  15.   


    但他为什么用这种来查询数据库?我就想知道MVC中的M,对数据库的操作。是不是用LINQ啊?
      

  16.   

    好像没说MVC一定要用Linq,lz多虑了吧
      

  17.   

    都跟你说了,那不是mvc的代码,更加和linq没有关系!
    在应用程序中:M表示对业务行为的描述,跟数据库没有关系对于数据查询服务,linq也不是什么好办法,生产效率仍然很低下,你的代码也说明了问题,
      

  18.   

    你是在谈论应用程序服务,还是在谈论数据访问服务?
    离开CURD、不谈数据库,就写不了程序了??
      

  19.   


    Entity 不是LINQ语法的吗?
      

  20.   

    linq是用于查询的工具集,可以查询数据库,也可以查询数据集,也可以查询对象集,也可以查询xml;
    entity是模型的实例,既可以描述数据,也可以描述业务,
    entity可以设计时刻组装,也可以运行时刻组装
      

  21.   


    就是了,我不用这些行不行?这些都与LINQ相关的
      

  22.   

    那就直接说明MODEL可以用ADO或LINQ不好些吗?
      

  23.   

    晕死了,人家说了半天,你根本没听进去啊,
    Model描述业务,根数据访问没有关系,
    如果没有数据库的话,你就不写model了?你就不写程序了?你就不测试了?
      

  24.   

    我也在研究这个问题,我是在BAL层返回一个ILIST<T>,然后在VIEW中foreach(),至于MODEL层,我也是延用三层结构中的实体类来弄的,我好像把MVC中的MODEL给跳过了
      

  25.   


    书中也是这样,模型组件一般存放在“MODELS文件夹中”,例如LINQ TO SQL 类或者 ADO.NET Entity Data Model。就是这样了,用ADO.NET行不?
      

  26.   

    想用啥用啥,你就用datatable,array只要你自己觉着用着顺手就ok