次のコードを試しています
UserDetail ud = UserDetail.SingleOrDefault(u => u.UserName == CurrentUserName);
if (ud == null)
ud = new UserDetail();
Address uAddress = ud.AddressId.HasValue
? Address.SingleOrNew(a => a.Id == ud.AddressId)
: new Address();
using (TransactionScope tc = new TransactionScope())
{
uAddress.Save();
ud.AddressId = uAddress.Id;
ud.Save(); // error is here
tc.Complete();
}
ud.save() に到達すると、「操作はトランザクションの状態に対して有効ではありません。」というエラーが表示されます。---> System.Transactions.TransactionPromotionException: トランザクションの昇格を試行中にエラーが発生しました'
トランザクション部分をコメントアウトすると、正常に動作します.SingleOrDefaultがdbから切断されていませんか?
ありがとう