Sdílet prostřednictvím


Postupy: přiřazení uložené procedury k provedení aktualizace, vložení a odstranění (Návrhář relací objektů)

 

Publikováno: srpen 2016

Uložené procedury mohou být přidány do Návrháře relací objektů a provedeny jako typický DataContext metody. Můžete také používají přepsat výchozí nastavení Technologie LINQ to SQL runtime chování, která provede vloží, aktualizace a odstraní po uložení změn ze třídy entity k databázi (například při volání SubmitChanges metoda).

Poznámka

Je-li uložené procedury vrátí hodnoty, které mají být odesílány zpět klientovi (například hodnoty v započítána uložené procedury), vytvořte výstupní parametry v uložené procedury. Pokud nemůžete použít výstupní parametry, zápisu implementace částečné metody namísto spoléhání na přepsání generovaných Návrháře relací objektů. Členy namapována na hodnoty generované databáze je nutné nastavit odpovídající hodnoty po úspěšném dokončení operace vložení nebo aktualizaci. Další informace naleznete v tématu Responsibilities of the Developer In Overriding Default Behavior.

Poznámka

Technologie LINQ to SQLzpracovává databáze generované hodnoty automaticky identity (automatické zvýšení), rowguidcol (GUID generované databáze) a časové razítko sloupce. Databáze generované hodnoty v jiné typy sloupce způsobí neočekávaně hodnotu null. Mají být vráceny hodnoty generované databáze, je třeba ručně nastavit IsDbGenerated k true a AutoSync na jednu z následujících akcí: Always, OnInsert, nebo OnUpdate.

Konfigurace chování aktualizace Entity třídy

Ve výchozím nastavení logiku pro aktualizaci databáze (vloží, aktualizaci a odstraňování) se změnami, které byly vráceny na data v Technologie LINQ to SQL třídy entit je poskytována Technologie LINQ to SQL modulu runtime. Modul runtime vytvoří výchozí vložení, aktualizace a odstranění příkazy, které jsou založeny na schématu tabulky (sloupec a informace o primárním klíči). Pokud není žádoucí výchozí chování, můžete nakonfigurovat chování aktualizace přiřazením uložených procedur specifických pro provádění nezbytné vloží, aktualizace, a odstraní nezbytné k manipulaci s daty v tabulce. Můžete také provést při výchozí chování není vytvořeno, například když vaše entity třídy mapování na zobrazení. Na závěr můžete přepsat výchozí chování aktualizace databáze vyžaduje přístup k tabulce prostřednictvím uložené procedury.

Poznámka

Váš počítač může v následujících pokynech zobrazovat odlišné názvy nebo umístění některých prvků uživatelského rozhraní sady Visual Studio. Tyto prvky jsou určeny edicí sady Visual Studio a použitým nastavením. Další informace najdete v tématu Přizpůsobení integrovaného vývojového prostředí.

Chcete-li přiřadit uložené procedury, chcete-li přepsat výchozí chování třídy entity

  1. Otevřít LINQ do SQL souboru v návrháři. (Klikněte dvakrát na soubor DBML v Průzkumníka řešení.)

  2. V Průzkumníku serveru/Průzkumník databáze, rozbalte položku uložené procedury a vyhledejte uložené procedury, které chcete použít pro vložení, aktualizace, a/nebo odstranit příkazy třídy entity.

  3. Uložená procedura přetáhněte Návrháře relací objektů.

    Uložená procedura je přidán do podokna metody jako DataContext metody. Další informace naleznete v tématu DataContext Methods (O/R Designer).

  4. Vyberte třídu entity, pro kterou chcete použít pro provádění aktualizací uložené procedury.

  5. V vlastnosti okna, klepněte na příkaz k přepsání (vložit, aktualizace, nebo odstranit).

  6. Klikněte na tlačítko se třemi tečkami (...) vedle slov použití Runtime otevřete konfigurovat chování dialogové okno.

  7. Vyberte přizpůsobit.

  8. Vyberte požadovanou uložené procedury v vlastní seznamu.

  9. Zkontrolovat seznam argumenty metody a vlastnosti třídy ověřit, zda argumenty metody mapy na příslušnou vlastnosti třídy. Mapování původní argumenty metody (Original_název argumentu ArgumentName) na původní vlastnosti (položka název vlastnosti (původní)) pro aktualizace a odstranění příkazy.

    Poznámka

    Ve výchozím nastavení metoda argumenty mapování vlastnosti třídy při názvy odpovídají. Je-li změnit vlastnosti, kterou názvy odpovídají již mezi tabulkou a třídě entity, bude pravděpodobně nutné vybrat vlastnost ekvivalentní třídy k mapování na, pokud Návrhář nemůže určit správné mapování.

  10. Klikněte na tlačítko OK nebo použít.

    Poznámka

    Chcete-li konfigurovat chování pro každou třídu/chování kombinaci, dokud po klepnutí na tlačítko použít po provedení každé změny. Pokud změníte třídu nebo chování před klepnutím na použít, poskytuje možnost změny se projeví se zobrazí dialogové okno upozornění.

    K obnovení použití výchozí modul runtime logiku pro aktualizace, klikněte na tlačítko se třemi tečkami vedle vložení, aktualizace, nebo odstranit příkaz v vlastnosti okna a potom vyberte použít runtime v konfigurovat chování dialogové okno.

Viz také

Technologie LINQ to SQL nástroje v sadě Visual Studio
DataContext Methods (O/R Designer)
Walkthrough: Creating LINQ to SQL Classes (O/R Designer)
Návod: Vytvoření uložené procedury aktualizace pro tabulku zákazníků Northwind
LINQ to SQL
Insert, Update, and Delete Operations