直接举例:
后台代码
//这是我某个控制器中的查询语句,主要是在数据库中查询出指定的“图片地址”
var Images1 = (from m in _context.CarImage where m.图片名称=="21" select m.图片
地址).Single();
string Images2 = Images1.ToString();
ViewData["Images2"]=Images1.ToString();
前台代码
<h2>————热门车型————"@ViewData["Images2"]"</h2>
<h3><span>超前科技,智慧相伴</span></h3>
然后这是测试效果,OK
实战:
查询:用户ID,查询用户余额
int getUserId = (int)(from m in _context.Login where m.UserName == UserName select m.LoginId).Single();//查找用户Id
int getMoney = (int)(from x in _context.银行卡 where x.用户Id == getUserId select x.余额).Min()-10000;//扣除金额
插入数据:
当用户余额大于0时,执行数据库插入数据操作。
if (getMoney >=0)
{
_context.SalesList.AddRange
(
new SalesList()
{
UserId = getUserId,
CarsId = 1,
StaffId = 1,
}
);//用户购买订单数据写入完成
_context.银行卡.AddRange(
new 银行卡()
{
姓名 = UserName,
银行卡号 = Card,
余额 = getMoney,
用户Id = getUserId,
}
);
_context.SaveChanges();
}
修改数据:
var getcarnum = from a in _context.Car where a.CarId == 2 select a;
foreach (var i_ in getcarnum)
{
i_.剩余数量=i_.剩余数量-1;
}//修改操作,秘传=》
未完待续......................
相关基础知识:
大部分的网页或者软件对于数据的操作都离不开数据库,对于数据的查询,C#中可以使用Linq来进行数据的查询。
Linq语句有很多种写法,但都脱离不了必须的关键字,例如:form,select,where等等
下面这个例子是对于数据库的一个简单的单表查询
关键字from
from表明数据从哪里来。
from 后面跟着的是一个自命名,这个自命名是一个范围变量。例如例子中的tbAcademe,就是范围变量,这个可以随便命名,但在命名的时候最好是命名一些具有实制意义的名字,方便以后的维护。最好不要用中文!
关键字in
in 表示在哪里查询,英文翻译就是“在…里面”,这个就没什么好说明的
in 后面跟着的是数据源,就是数据的源头,就比如一条河流,河流再长也需要一个源头才能形成一条河流。例子中的 myModel.SQ_Academe,myModel是通过实例化数据库得来的一个自命名,
SQ_Academe 是数据库里面的一个数据表,
关键字select
selsct 表明查询数据。对于计算机来说,它并不知道你写的这些代码有什么用,这时候就需要一个关键字select 来提示它,需要查询数据,select之后就是需要查询的表,前面范围变量命名是什么,select后面就写什么,指定查询的地方。
关键字 ToList
括号外的ToList(),指定查询出来的数据以一个表格的形式返回到dbTab
关键字 Count
Count 指定查询数据并统计整个数据表有多少条数据,然后把统计出来的数据返回到dbTab
关键字 Single
Single 指定查询单条数据,这个一般配合条件语句使用,然后把找到的单条数据返回到dbTab
上面的例子中多了一个条件语句,而where是关键字
关键字 where
where 是条件语句,表明查询数据的时候根据where后面的条件去查询
上面的例子中表明查询数据要根据视图传到控制器的ID去查询
AcademeID,是控制器的方法接收视图传来的参数,以上面这个例子来说就是控制器接收页面传到控制器的ID。
因为ID是整数,所以要用int类型来接收
关键字 orderby
orderby 表明查询出来的数据要进行排序
进行排序就要指明是要根据升序排序还是降序排序,所以orderby后面是根据什么条件去排序,条件后面就是一个关键字,这个关键字指明是升序还是降序
上面的例子是根据数据表的ID去排序并且是降序排序
关键字ascending descending
ascending 指明排序是按照升序排序
descending 指明排序是按照降序排序
以上这是这位老哥的