EF回滚使用ObjectContext插入sp

问题描述:

您好,如何使用带有ObjectContext的EF6 + SP回滚插入的值?

Hello, How can I rollback an inserted values using EF6 + SP with ObjectContext?

using (MyObjectContext context = new MyObjectContext())
{
	try
	{
		ObjectParameter iIdParent = new ObjectParameter("PARENT_ID", typeof(int));
		// EXECUTE INSERT PARENT STORED PROCEDURE
		var result = context.InsertParent(param1, param2, iIdParent);

		if (condition == true)
		{
			// EXECUTE INSERT CHILD STORED PROCEDURE ONLY IF CONDITION IS TRUE
			context.InsertChild(Convert.ToInt32(iIdPlanilla.Value), param3);
			context.SaveChanges();
		}
		else
		{
			// ROLLBACK INSERT PARENT STORED PROCEDURE IF CONDITION IS FALSE ???			
			sError = "Error condition";
			throw new Exception(sError);
		}
	}
	catch (Exception ex)
	{
		sError = ex.Message;
	}
}


提前谢谢

我建​​议你将所有内容都包装在一个系统中。交易范围。
I suggest that you wrap everything in a System.Transaction scope.