C#/Sharp NET Core(MVC)使用 Linq操作数据库

直接举例:

            

后台代码
//这是我某个控制器中的查询语句,主要是在数据库中查询出指定的“图片地址”
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 指明排序是按照降序排序

以上这是这位老哥的

(26条消息) C# linq语句解析 数据查询_3的奇迹的博客-CSDN博客_c#linq语句

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

桂亭亭

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值