簡體   English   中英

EF(實體框架)“using”語句和“try catch”相互配合

[英]EF(entity framework) "using" statement and "try catch" withing each other

這些使用/try-catch 塊的方式有什么區別嗎?

第一的 :

public bool Insert(SomeEntity entity)
{
    bool result = false;
    
    try
    {
        using (var db = new MyEntities())
        {
            db.AddToSomeEntity(entity);
            db.SaveChanges();
            
            result = true;
        }
    }
    catch (Exception e)
    {
        //
    }
    return result;
}

第二 :

public bool Insert(SomeEntity entity)
{
    bool result = false;
    using (var db = new MyEntities())
    {
        try
        {
            db.AddToSomeEntity (entity);
            db.SaveChanges();
            result = true;
        }
        catch (Exception e)
        {
                    //
        }
    }
    
    return result;
}

會影響性能嗎?

添加此字符串是為了滿足 SO 提交驗證規則。

我不認為它違反了任何規則,即你想在什么時候將上下文發送到垃圾收集我建議使用第二種方法,因為它更具體,當你的函數完全執行時,你會將對象發送到垃圾收集,否則您可能會遇到一個異常,即您嘗試使用不再可用的上下文

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM