常规泛型操作,保存一个实体类,定义的方法如下:
int DbSession.Save(T entity)
现在有一个需求,就是在保存实体entity后,获取数据库的自增主键?原始的Save方法不能提供这样的功能,和群里的朋友讨论了一会(这里特别感谢下群里的朋友 终ゝ )是从他那里获取的灵感,算是把这个问题给解决了。
解决方案如下:
public bool AddEntity(T entity, out int pkValue){ bool isOk = false; isOk = DbSession.Save(entity) > 0; if (isOk) { pkValue = entity.ID; } else { pkValue = 0; } return isOk;}
至此问题,已经解决,不过方案不是唯一的,可能也不是最好,但是提供了一种思路,利用输出参数 out int pkValue,来扩展框架原有的方法,从而获得新的功能。