如何通过实体框架自动生成Oracle数据库的标识?
我有一个可以调用和生成列的函数,这个列不是在上下文中,如何通过实体框架显式调用存储过程?我正在使用存储库模式。
随机数生成器插入记录(通过UDF获取主键并将其传递给实体以插入)。
发布于 2013-10-30 14:06:12
1)在Oracle中创建序列
CREATE SEQUENCE dummy_test_seq
MINVALUE 1
MAXVALUE 999999999999999999999999999
START WITH 1
INCREMENT BY 1;2)创建属性
sealed public class CommonUtilities
{
#region Sequences
public static int DummyTestSeq
{
get
{
using (Entities ctx = new Entities())
{
return Convert.ToInt32(ctx.Database.SqlQuery<decimal>("SELECT dummy_test_seq.NEXTVAL FROM DUAL").ToList().Single());
}
}
}
#endregion
}3)获取序列
public int InsertTable1()
{
using (Entities ctx = new Entities())
{
ctx.tabel1.Add(new tabel1()
{
SEQ = CommonUtilities.DummyTestSeq,
Date= DateTime.Now
});
return ctx.SaveChanges();
}
}https://stackoverflow.com/questions/8232997
复制相似问题