插入后,ASP.NET存储库获取id

时间:2016-05-28 19:45:15

标签: c# sql asp.net asp.net-mvc

如何在insert()命令后获取id。这是代码。

private readonly IRepository<ShoppingCart> _shoppingCartRepository;
public ShoppingCartBL(IRepository<ShoppingCart> shoppingCartRepository)
    {
        _shoppingCartRepository = shoppingCartRepository;
    }

public int CreateNewShoppingCart(ShoppingCart item)
    {
        if(item==null)
            throw new ArgumentNullException("ShoppingCart Variable");

        this._shoppingCartRepository.Insert(item);
        return this._shoppingCartRepository.Table.Last().Id;
    }

这部分给出错误:return this._shoppingCartRepository.Table.Last().Id;

我只需要获取插入项目的ID。

感谢名单

2 个答案:

答案 0 :(得分:4)

插入实体后,应更新它,以便映射到数据库中主键的属性具有新的PK值。

就像您的情况 item.Id 会为您提供新的ID

答案 1 :(得分:1)

这也有效:return this._shoppingCartRepository.Table.ToList().Last().Id;