ASP.NET MVC的常用数据库查询和提取模式

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Faith1460/article/details/68958384

本文主要记录目前比较常用的两种ASP.NET数据库查询和提取模式。

方法一:是利用SQL的查询语句来进行数据库检索,然后利用DataReader提取数据,进行输出。

方法二:是利用ENTITY FRAMEWORK,构建连接,利用Linq语句进行检索查询和输出。

先说方法二:

这种结构相对简单。

首先,在model文件夹中新建数据库连接,获得数据上下文。

然后在控制器中,实例化,并获取泛型集合。

UserInfoEntities ef = new UserInfoEntities();

List<UserList> _list = ef.UserList.ToList();

最后使用linq语句,从集合中检索。

_list = _list.OrderBy(c => c.ID).Skip(int.Parse(LastPageSize)).Take(PageSize).ToList();

return View(_list);

最后返还给view视图。

方法一:

第一步与方法二相同;

第二步是在控制器中,创建sql查询语句,然后通过DataReader把数据读出,赋值给泛型集合。赋值的方法有两种,一个是值对值的赋值,另一个是使用object对象,获取全部数据。

    由于我的测试案例相对简单,所以使用了值对值的赋值方法。

UserInfoEntities ef = new UserInfoEntities();
string findSql = "select top " + PageSize + " * from UserList "
+ "where ID not in( select top " + LastPageSize + " ID from MyTestPages order by Id) order by ID";
string constr = "server=.;database=UserInfo;uid=sa;pwd=123456";
SqlConnection mycon = new SqlConnection(constr);
mycon.Open();
SqlCommand mycom = new SqlCommand(findSql, mycon);

SqlDataReader mydr = mycom.ExecuteReader();
List<UserList> _list=new List<UserList>();
while (mydr.Read())
{
UserList userList = new UserList();
//通过值对值的方式,给userList这个类分别赋值
//整体赋值可以通过循环获取object,然后再赋值给泛型
//给id赋值的方式有一下几种
//userList.ID = int.Parse(mydr.GetValue(0).ToString());
//userList.ID = int.Parse(mydr["ID"].ToString());?
userList.ID = int.Parse(mydr[0].ToString());
_list.Add(userList);
}
mydr.Close();
mycon.Close();
return View(_list);




展开阅读全文

没有更多推荐了,返回首页