MVC中的MODEL除了LINQ,还可以用什么?因为LINQ确实不是很熟练,不敢拿来用先。
解决方案 »
- asp.net从数据库中生成的数据导出到Excel问题
- 请问如下代码什么意思了
- aspx页面怎么把gridview列的值传递到网页对话框中去?
- gridview如何实现后台插入模板列,加入dropdownlist控件?
- 用js代码怎样才能插入flash呢
- Response.Redirect() 和Server.Transfer() 有什么区别
- 关于如何在下拉菜单中实现鼠标悬浮在某项上显示此项详细信息的功能!急啊!
- 请问网页上的在线QQ是怎么做的?
- 我写的翻页代码,出了个小问题,请帮忙看看。
- 在DataGrid模板列中放PlaceHolder,ItemCreate动态创建textbox空间,如何设置宽度和数据绑定!!
- 第260分,求教高手帮忙修改Ajax测试网站
- asp.net中MVC架构
使用ASP.NET MVC2+PDF.NET 构建一个简单的新闻管理程序
至于数据层,你新建一个层就是了,用ADo.net 还是linq 随你喜好。
本框架使用简单,可操作多种数据库,还支持在mono下跨平台使用。
asp.netMVC不是MVC!就好像脑黄金不是黄金,连金属都不是
MVC更加和linq没有任何关系在面向对象中,不仅需要发现对象,比如view,model
而且需要发明对象,比如controller,
其实你可以给这些对象起任何名字,不一定非叫view,model,
只要你的设计引入了"发明的控制类对象"来改善其他组件之间的关系,
那就是MVC的;
并且,model应该针对行为建模,而不是针对数据建模
{
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表达式吧。大家怎么说没关系呢?
同样是最普通的获取数据的方法,去被你写出2个(N个)方法,
你看看你列出的2个函数的代码是一模一样的!
你的代码量和你的所谓对象成正比,不是收敛的
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
基于增删改查的处理的所有业务中,
代码量并不伴随着"实体"的增加而增加
但他为什么用这种来查询数据库?我就想知道MVC中的M,对数据库的操作。是不是用LINQ啊?
在应用程序中:M表示对业务行为的描述,跟数据库没有关系对于数据查询服务,linq也不是什么好办法,生产效率仍然很低下,你的代码也说明了问题,
离开CURD、不谈数据库,就写不了程序了??
Entity 不是LINQ语法的吗?
entity是模型的实例,既可以描述数据,也可以描述业务,
entity可以设计时刻组装,也可以运行时刻组装
就是了,我不用这些行不行?这些都与LINQ相关的
Model描述业务,根数据访问没有关系,
如果没有数据库的话,你就不写model了?你就不写程序了?你就不测试了?
书中也是这样,模型组件一般存放在“MODELS文件夹中”,例如LINQ TO SQL 类或者 ADO.NET Entity Data Model。就是这样了,用ADO.NET行不?