Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Ajouter plusieurs enregistrements à l'aide de Linq-to-SQL

Je suis en retard à la fête, mais j'ai pensé que vous voudriez peut-être savoir que la boucle for n'est pas nécessaire. Mieux vaut utiliser foreach (vous n'avez pas besoin de l'index).

Cela devient encore plus intéressant lorsque vous utilisez LINQ (méthode renommée pour plus de clarté) :

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();
}

Soit dit en passant, vous ne devriez pas conserver un contexte de données auquel vous accédez tout le temps ; il vaut mieux en créer un localement , à l'intérieur d'une instruction using, qui gérera correctement la déconnexion de la base de données.