Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Mehrere Datensätze mit Linq-to-SQL hinzufügen

Ich komme zu spät zur Party, aber ich dachte, Sie möchten vielleicht wissen, dass die for-Schleife unnötig ist. Verwenden Sie besser foreach (Sie brauchen den Index nicht).

Noch interessanter wird es, wenn Sie LINQ (zur besseren Übersichtlichkeit umbenannte Methode) verwenden:

public static void InsertFeedbacks(IEnumerable<QuestionClass.Tabelfields> allList)
{
    var fadd = from field in allList
               select new Feedback
                          {
                              Email = field.Email,
                              QuestionID = field.QuestionID,
                              Answer = field.SelectedOption
                          };
    context.Feedbacks.InsertAllOnSubmit(fadd);
    context.SubmitChanges();
}

Übrigens sollten Sie nicht einen Datenkontext behalten, auf den Sie ständig zugreifen; Es ist besser, einen zu erstellen lokal , innerhalb einer using-Anweisung, die die Datenbanktrennung ordnungsgemäß handhabt.