c# - Linq 查询从表中获取最近插入的 Id
问题描述
我正在尝试从 TaskOrder 表中获取最近插入的 id,以用作创建子任务时的隐藏字段。我的 linq 查询如下,我收到一个我无法弄清楚的匿名类型错误。
public async Task<int> GetLastTaskOrderId()
{
var result = (from t in _context.TaskOrder
select new
{
TaskorderId = t.TaskOrderId
}).MaxAsync();
return await result;
}
解决方案
尝试这个
public async Task<int> GetLastTaskOrderId()
{
var item = await _context.TaskOrder.OrderBy(u => u.TaskOrderId).LastOrDefaultAsync();
return item.TaskOrderId;
}
或者
return await _context.TaskOrder.MaxAsync(u => u.TaskOrderId);
我不知道哪个更快,因为主键通常是索引和聚集的。
推荐阅读
- android - Android Pie - 9 (API 28) : 安装 APK .... 未成功安装
- javascript - 如何创建像这样的动画 svg 渐变?
- intellij-idea - 当窗口成为焦点时,IntelliJ 处于“阻塞”模式
- java - RxJava Flowable.create(),如何尊重 subscribeOn() 线程
- java - 如果添加 null,ArrayList 会动态增长吗?
- angular - 如何在Angular 6中使用纬度和经度更新地理位置中心和标记
- python - 在张量流 Keras 中将图像拟合到 Conv2D 层时出错
- regex - 正则表达式匹配来自 .txt 文件的 IP
- python - python中对象的方法和属性有什么区别?
- java - 如何在Spring中通过ApplicationContext即时直接使用bean