繁体   English   中英

哪一个最好是在数据库中插入一行?

[英]Which was is best to insert a row into a database?

很长一段时间我一直在做以下事情:

using(var db = new MainContext())
{
    // Create license issue record
    var n = new tblStoreLicenseIssue
    {
        Comment = comment,
        EmailAddress = email,
        Hash = mangled2,
        LicensedTo = name,
        Timestamp = unixTime,
        ValidClaimID = validClaimID
    };

    db.tblStoreLicenseIssues.InsertOnSubmit(n);
    db.SubmitChanges();
}

但我想知道这种方法是否具有任何优势:

var n = new tblStoreLicenseIssue
{
    Comment = comment,
    EmailAddress = email,
    Hash = mangled2,
    LicensedTo = name,
    Timestamp = unixTime,
    ValidClaimID = validClaimID
};

using(var db = new MainContext())
{
    db.tblStoreLicenseIssues.InsertOnSubmit(n);
    db.SubmitChanges();
}

哪种方法被认为是最佳实践,为什么?

我会选择后者 - 因为创建对象不使用DB上下文,它不必在using构造中。

第二种方法提供的唯一优势是,在构造tblStoreLicenseIssue失败的情况下,您将避免构造和处理MainContext的实例。 除此之外,这两个片段是相同的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM