Freigeben über


Gewusst wie: Hinzufügen einer bestimmten Finder-Methode

Sie können eine einzelne Entitätsinstanz zurückgeben, indem Sie eine spezifische Finder-Methode erstellen. Der Business Data Connectivity (BDC)-Dienst führt die spezifische Finder-Methode aus, wenn ein Benutzer in einem Geschäftsdatenwebpart oder einer externen Liste eine Entität auswählt. Weitere Informationen finden Sie unter Entwerfen eines Business Data Connectivity-Modells.

So erstellen Sie eine spezifische Finder-Methode

  1. Wählen Sie im BDC-Designer eine Entität aus. Weitere Informationen zum Hinzufügen einer Entität zum BDC-Designer in Visual Studio. Weitere Informationen finden Sie unter Gewusst wie: Hinzufügen einer Entität zu einem Modell.

  2. Klicken Sie im Menü Ansicht auf Weitere Fenster und dann auf BDC-Methodendetails.

    Das Fenster BDC-Methodendetails wird geöffnet. Weitere Informationen zum Fenster BDC-Methodendetails finden Sie unter Übersicht über Entwurfstools für BDC-Modelle.

  3. Wählen Sie im Fenster BDC-Methodendetails in der Dropdownliste Methode hinzufügen den Eintrag Spezifische Finder-Methode erstellen aus.

    Mit Visual Studio werden dem Modell die folgenden Elemente hinzugefügt. Diese Elemente werden im Fenster BDC-Methodendetails angezeigt.

    • Eine Methode.

    • Ein Eingabeparameter für die Methode.

    • Ein Rückgabeparameter für die Methode.

    • Ein Typdeskriptor für jeden Parameter.

    • Eine Methodeninstanz für die Methode.

    Weitere Informationen finden Sie unter Entwerfen eines Business Data Connectivity-Modells.

  4. Öffnen Sie das Fenster Eigenschaften von Visual Studio.

  5. Konfigurieren Sie den Typdeskriptor des Rückgabeparameters als Entitätstypdeskriptor. Weitere Informationen zum Erstellen eines Entitätstypdeskriptors finden Sie unter Gewusst wie: Definieren des Typdeskriptors für einen Parameter.

    Tipp

    Sie müssen diesen Schritt nicht ausführen, wenn Sie der Entität eine Finder-Methode hinzugefügt haben. Visual Studio verwendet den Typdeskriptor, den Sie in der Finder-Methode definiert haben.

    Tipp

    Wenn das Bezeichnerfeld des Entitätstyps ein Feld in einer Datenbanktabelle darstellt, die automatisch generiert wird, legen Sie die Eigenschaft Schreibgeschützt des Bezeichnerfelds auf True fest.

  6. Wählen Sie im Fenster Methodendetails die Methodeninstanz der Methode aus.

    Standardmäßig weist Visual Studio dieser Methode den Namen MethodInstance1 zu.

  7. Legen Sie im Eigenschaftenfenster die Eigenschaft Rückgabeparametername auf den Namen des Rückgabeparameters der Methode fest. Weitere Informationen zu Methodeninstanzeigenschaften finden Sie im Thema zu MethodInstance (möglicherweise in englischer Sprache).

  8. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf die Dienstcodedatei, die für die Entität generiert wurde, und klicken Sie dann auf Code anzeigen.

    Die Codedatei für den Entitätsdienst wird im Code-Editor geöffnet. Weitere Informationen zur Codedatei für den Entitätsdienst finden Sie unter Erstellen eines Business Data Connectivity-Modells.

  9. Fügen Sie der spezifischen Finder-Methode Code hinzu. Mit diesem Code werden die folgenden Aufgaben ausgeführt:

    • Abrufen eines Datensatzes aus einer Datenquelle.

    • Zurückgeben einer Entität an den BDC-Dienst.

    Im folgenden Beispiel wird ein Kontakt aus der AdventureWorks-Beispieldatenbank für SQL Server zurückgegeben.

    Tipp

    Ersetzen Sie den Wert des Felds ServerName durch den Namen Ihres Servers.

    Public Shared Function ReadItem(ByVal contactID As Integer) As Contact
        Const ServerName As String = "MySQLServerName"
        Dim dataContext As AdventureWorksDataContext = _
            New AdventureWorksDataContext("Data Source=" & ServerName & _
                ";Initial Catalog=AdventureWorks;Integrated Security=True")
    
        Dim Contact As Contact = _
            (From TempContacts In dataContext.Contacts.AsEnumerable().Take(20) _
            Where TempContacts.ContactID = contactID _
            Select TempContacts).[Single]()
        Return Contact
    End Function
    
    public static Contact ReadItem(int contactID)
    {
        const string ServerName = "MySQLServerName";
        AdventureWorksDataContext dataContext = new AdventureWorksDataContext
              ("Data Source=" + ServerName + ";" +
               "Initial Catalog=AdventureWorks;Integrated Security=True");
    
        Contact Contact =
            (from contacts in dataContext.Contacts.AsEnumerable().Take(20)
             where contacts.ContactID == contactID
             select contacts).Single();
        return Contact;
    }
    

Siehe auch

Aufgaben

Gewusst wie: Hinzufügen einer Finder-Methode

Gewusst wie: Hinzufügen einer Creator-Methode

Gewusst wie: Hinzufügen einer Deleter-Methode

Gewusst wie: Hinzufügen einer Updater-Methode

Gewusst wie: Hinzufügen eines Parameters zu einer Methode

Gewusst wie: Definieren einer Methodeninstanz

Konzepte

Übersicht über Entwurfstools für BDC-Modelle

Weitere Ressourcen

Entwerfen eines Business Data Connectivity-Modells