我有这个序列生成查询,获取当前序列并将其增加到下一个值。但增量没有更新。该NEXTVAL总是从数据库更新记录不能在LINQ to SQL
Entity | StartVal | Increment | CurVal | NextVal
----------------------------------------------------
INVOICE | 0 | 1 | 0 | 1
的NEXTVAL应该是3,5,7等
int nextVal = 0;
using (var db = new MedicStoreDataContext())
{
DAL.LINQ.Sequence seq = (from sq in db.Sequences
where sq.Entity == entity
select sq).SingleOrDefault();
if (seq != null)
{
nextVal = seq.NextVal.HasValue ? seq.NextVal.Value : 0;
seq.NextVal = nextVal + 2;
db.SubmitChanges();
}
}
,我就留什么撤消返回1,默认值?
UPDATE: 答案:我需要设置主键和更新序列类字段以包括主键
我正在使用Sql CE,我不想经历麻烦 - 就像它不支持多个语句。 – codingbiz
您需要向表中添加一个主键才能工作,并且还要更新linq 2 sql类。 – Candide
你确定'seq'不是null。一步一步的代码,你会知道LINQ查询可能不正确? – Turbot