Porady: wywoływanie procedury przechowywanej za pomocą LINQ (Visual Basic)
Zintegrowane języka kwerend (LINQ) ułatwia dostęp do informacji bazy danych, łącznie z procedurami obiektów, takich jak przechowywane bazy danych.
Poniższy przykład pokazuje, jak utworzyć aplikację, która wywołuje procedurę przechowywaną w bazie danych programu SQL Server.Próbki pokazuje, jak wywołać dwie różne procedury przechowywanej w bazie danych.Każda procedura zwraca wyniki kwerendy.Jedna procedura pobiera parametry wejściowe i inne procedury nie ma parametrów.
W tym temacie w przykładach używana przykładowa baza danych Northwind.Jeśli nie masz przykładowej bazy danych Northwind na komputerze dewelopera, można pobrać ją z Centrum pobierania firmy Microsoft witryny sieci Web.Aby uzyskać instrukcje, zobacz Downloading Sample Databases.
[!UWAGA]
Na komputerze w poniższych instrukcjach mogą być wyświetlane inne nazwy i lokalizacje niektórych elementów interfejsu użytkownika programu Visual Studio. Te elementy są określane przez numer wersji Visual Studio oraz twoje ustawienia. Aby uzyskać więcej informacji, zobacz Dostosowywanie ustawień środowiska deweloperskiego w Visual Studio.
Aby utworzyć połączenie z bazą danych
W programie Visual Studio, otwórz Server Explorer/Explorer bazy danych przez kliknięcie przycisku Server Explorer/Explorer bazy danych na widoku menu.
Kliknij prawym przyciskiem myszy Połączeń danych w Server Explorer/Explorer bazy danych , a następnie kliknij przycisk Dodać połączenie.
Określić prawidłowe połączenie do bazy danych Northwind.
Aby dodać projekt, który zawiera LINQ pliku SQL
W programie Visual Studio na pliku menu, wskaż Nowy , a następnie kliknij przycisk projektu.Wybierz Visual Basic Aplikacji Windows Forms jako typu projektu.
Na Projekt menu, kliknij przycisk Dodaj nowy element.Wybierz LINQ klas SQL szablonu elementu.
Nazwa pliku northwind.dbml.Kliknij przycisk dodać.Relacyjne Object Designer (Projektant O/R) jest otwarty dla pliku northwind.dbml.
Aby dodać procedur przechowywanych do projektanta O/R
W Server Explorer/Explorer bazy danych, rozwiń połączenie do bazy danych Northwind.Rozwiń węzeł Przechowywanych procedur folder.
Jeśli zostały zamknięte projektanta O/R, można go ponownie otworzyć przez dwukrotne kliknięcie pliku northwind.dbml, który dodano wcześniej.
Kliknij przycisk sprzedaży według roku procedury przechowywanej i przeciągnij go w prawym okienku projektanta.Kliknij przycisk Dziesięciu najbardziej kosztowne produktów procedury przechowywanej, przeciągnij go do prawego okienka projektanta.
Zapisz zmiany i zamknąć projektanta.
Zapisz swój projekt.
Aby dodać kod, aby wyświetlić wyniki procedur przechowywanych
Z Przybornik, przeciągnij DataGridView kontrolkę domyślny formularz systemu Windows w projekcie formularza Form1.
Kliknij dwukrotnie formularz Form1, aby dodać kod do jego Load zdarzenia.
Gdy procedury przechowywane są dodawane do projektanta O/R, Projektant dodaje DataContext obiektu dla projektu.Ten obiekt zawiera kod, który musisz mieć dostęp do tych procedur.DataContext Obiektu o nazwie projektu oparte na nazwie pliku .dbml.Dla tego projektu DataContext obiektu o nazwie northwindDataContext.
Można utworzyć wystąpienia DataContext w kodzie i wywołania metody procedury przechowywanej określonym przez projektanta O/R.Powiązać z DataGridView obiektu, należy wymusić kwerendę, aby wykonać natychmiast, wywołując ToList``1 metoda o wynikach procedury przechowywanej.
Dodaj następujący kod do Load zdarzenia do wywołania jednej z procedur przechowywanych, jako metody kontekst danych.
Dim db As New northwindDataContext ' Display the results of the Sales_by_Year stored procedure. DataGridView1.DataSource = db.Sales_by_Year(#1/1/1996#, #1/1/2007#).ToList() ... ' Display the results of the Ten_Most_Expensive_Products ' stored procedure. DataGridView1.DataSource = db.Ten_Most_Expensive_Products.ToList()
Naciśnij klawisz F5, aby uruchomić projekt i wyświetlić wyniki.
Zobacz też
Zadania
How to: Assign Stored Procedures to Perform Updates, Inserts, and Deletes (O/R Designer)
Walkthrough: Creating LINQ to SQL Classes (O/R Designer)
Koncepcje
DataContext Methods (O/R Designer)