我是LINQ查询表达式的新手,它使用lambda表达式。我有一种方法可以用来更新不同表格中的值。 它工作正常单身或默认,但不是当我使用Where条件。LINQ lambda表达式中的条件
public static void UpdateData(int UserID)
{
using (var objEntity = new DataContext())
{
UserMaster objUser = objEntity.UserMasters.SingleOrDefault(TBL => TBL.UserID == UserID);
UserOfferUsed objUserUsed = objEntity.UserOfferUseds.Where(TBL => TBL.UserID == UserID);
objUser.Purchaseon = DateTime.Now.ToString("dd MMMM yyyy");
objUserUsed.UsedCoupon = 0;
objEntity.SaveChanges();
objData = null;
}
}
错误:无法隐式转换类型 'System.Linq.IQueryable' 到 'Database.UserOfferUsed'。一个显式转换存在(你 缺少强制转换?)
谢谢你的快速反应。但我得到列表后,我如何更新objUserUsed表的列值?因为我需要更新表中的一个以上的值..不仅单个或第一个.. –
@KuldipRana:我已经更新了答案 –
而不是这个'objUserUsed = objEntity.UserOfferUseds.Where(TBL => TBL.UserID ==用户ID).FirstOrDefault()';我们可以试试这个'objUserUsed = objEntity.UserOfferUseds.FirstOrDefault(TBL => TBL.UserID == UserID);' – Eldho