Freigeben über


Hinzufügen einer Creator-Methode

Eine Creator-Methode fügt der Datenquelle einer Entität neue Daten hinzu. Der Business Data Connectivity-Dienst (BDC) ruft diese Methode auf, wenn Benutzer*innen die Schaltfläche Neues Element im Menüband einer Liste auswählen, die auf dem Modell basiert. Weitere Informationen finden Sie unter Entwerfen eines Business Data Connectivity-Modells.

So fügen Sie eine Creator-Methode hinzu

  1. Wählen Sie im BDC-Designer eine Entität aus.

  2. Wählen Sie in der MenüleisteAnsicht>Weitere Fenster>BDC-Methodendetails aus.

    Das Fenster BDC-Methodendetails wird geöffnet. Weitere Informationen zu dem Fenster finden Sie unter Übersicht über BDC-Modelldesigntools.

  3. Wählen Sie in der Liste Methode hinzufügen die Option Creator-Methode erstellen aus.

    Visual Studio fügt dem Modell die folgenden Elemente hinzu, und diese Elemente werden im Fenster BDC-Methodendetails angezeigt.

    • Eine Methode mit dem Namen Create.

    • Ein Eingabeparameter für die Methode.

    • Ein Rückgabeparameter für die Methode.

    • Typdeskriptoren für die Parameter.

    • Eine Methodeninstanz für die Methode.

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

  4. Öffnen Sie im Projektmappen-Explorer das Kontextmenü der Dienstcodedatei, die für die Entität generiert wurde, und wählen Sie dann Code anzeigen aus.

    Die Codedatei für den Entity-Dienst wird im Code-Editor geöffnet. Weitere Informationen zur Codedatei des Entity-Diensts finden Sie unter Erstellen eines Business Data Connectivity-Modells.

  5. Fügen Sie Code zur Creator-Methode hinzu, der Daten zur Datenquelle hinzufügt. Im folgenden Beispiel wird ein Kontakt aus der AdventureWorks-Beispieldatenbank für SQL Server zurückgegeben.

    Hinweis

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

    public static Contact Create(Contact newContact)
    {
        const string ServerName = "MySQLServerName";
        AdventureWorksDataContext dataContext = new AdventureWorksDataContext
              ("Data Source=" + ServerName + ";" +
               "Initial Catalog=AdventureWorks;Integrated Security=True");
    
        Contact contact = new Contact();
    
        contact.FirstName = newContact.FirstName;
        contact.LastName = newContact.LastName;
        contact.EmailAddress = newContact.EmailAddress;
        contact.Phone = newContact.Phone;
        contact.EmailPromotion = newContact.EmailPromotion;
        contact.NameStyle = newContact.NameStyle;
        contact.PasswordHash = newContact.PasswordHash;
        contact.PasswordSalt = newContact.PasswordSalt;
        contact.ModifiedDate = DateTime.Now;
        contact.rowguid = Guid.NewGuid();
    
        dataContext.Contacts.InsertOnSubmit(contact);
        dataContext.SubmitChanges();
        return contact;
    
    }