Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Dodaj wiele rekordów za pomocą Linq-to-SQL

Jestem spóźniony na imprezę, ale pomyślałem, że możesz chcieć wiedzieć, że pętla for jest niepotrzebna. Lepiej używaj foreach (nie potrzebujesz indeksu).

Robi się jeszcze ciekawiej, gdy używasz LINQ (metoda o zmienionej nazwie dla jasności):

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

Nawiasem mówiąc, nie powinieneś trzymać jednego kontekstu danych, do którego masz dostęp przez cały czas; lepiej je utworzyć lokalnie , wewnątrz instrukcji using, która prawidłowo obsłuży rozłączenie bazy danych.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Paginacja SQL zwracająca całkowitą liczbę rekordów przed paginacją

  2. Wybierz, zmodyfikuj i wstaw do tej samej tabeli

  3. Zapisz tablicę bajtów na serwerze sql

  4. Samouczek dotyczący partycjonowania tabel SQL Server i partycji

  5. Konwertuj „datetimeoffset” na „smalldatetime” w SQL Server (przykłady T-SQL)