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
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.
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.
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.
Öffnen Sie das Fenster Eigenschaften von Visual Studio.
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.
Wählen Sie im Fenster Methodendetails die Methodeninstanz der Methode aus.
Standardmäßig weist Visual Studio dieser Methode den Namen MethodInstance1 zu.
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).
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.
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