通过linq访问数据库的返回值

本文关键字:返回值 数据库 访问 linq 通过 | 更新日期: 2023-09-27 17:52:40

我需要发送一个值到数据库这是我的代码

var concerthallID = from _concert in db.tbl_Content_Context
    join _concerthall in db.tbl_Concert_ConcertHall on _concert.ContextID equals _concerthall.ContextID
    where _concert.EnContextID == concertid
    select _concerthall.ConcertHallID;

如何将ConcertHallID设置为变量?

通过linq访问数据库的返回值

你的查询将返回一个Iqueryable,所以如果它将返回一行,或者你需要第一行,在你的代码后使用它:

var ID = concerthallID.FirstOrDefault();

您需要选择单个concert并从中选择id,确保它不是空的,代码应该是这样的:

var concert = (from _concert in db.tbl_Content_Context
    join _concerthall in db.tbl_Concert_ConcertHall on _concert.ContextID equals _concerthall.ContextID
    where _concert.EnContextID == concertid
    select _concert).SingleOrDefault();
var concerthallID = 0;
if (concert !=null)
    concerthallID = concert.ConcertHallID;

请记住用try catch块包围它,以确保单个只返回一个