VieleVieleSuchenBearbeiten

Die Komponente ManyToManyLookupEdit bietet einen Inline-Autocomplete-Editor zur Verwaltung von Many-to-Many (N:N)-Beziehungen zwischen Dataverse-Datensätzen. Es zeigt die aktuell zugehörigen Datensätze als Chips an und ermöglicht es Nutzern, Assoziationen zu suchen, hinzuzufügen und zu entfernen, ohne das Formular zu verlassen.

Wie es funktioniert

Platzieren Sie die Komponente in a RecordContext und spezifizieren Sie das RelationshipName. Die Komponente löst die zugehörige Tabelle automatisch auf, lädt zugehörige Datensätze und bietet ein durchsuchbares Autocomplete-Dropdown-Menü zum Hinzufügen neuer Assoziationen.

React
Blazor

Ansichten

Verwenden ViewIds Sie und DefaultViewId steuern Sie, welche Ansichten für die Suche in verwandten Datensätzen verfügbar sind. Die Spalten der Ansicht werden im Dropdown-Menü angezeigt, um den Nutzern zu helfen, den richtigen Datensatz zu identifizieren. Wenn keine Ansichten angegeben sind, wird die Standard-öffentliche Ansicht für die zugehörige Tabelle verwendet.

React
Blazor

Validierung

Verwenden MinimumNumberOfItems und MaximumNumberOfItems um Beschränkungen für die Anzahl der zugehörigen Datensätze durchzusetzen. Das Festlegen eines Minimums markiert das Feld automatisch bei Anforderung.

React
Blazor

Sparen

Änderungen werden als ausstehende Associate- und Disso-Associate-Anfragen erfasst. Wenn der Elternteil MainContext gespeichert wird, werden diese Anfragen zusammen mit anderen Änderungen an den transaktionalen Speichervorgang einbezogen.

React
Blazor

Beispiel

Das folgende Beispiel zeigt eine grundlegende ManyToManyLookupEdit Bindung zu einer viele-zu-viele-Beziehung.

React-Beispiel
Blazor-Beispiel
React TypeScript
Razor

Konfigurationsoptionen

Nutzen Sie die untenstehenden Steuerungen, um die ReadOnly, Disabled, MinimumNumberOfItems, und MaximumNumberOfItems Eigenschaften zu erkunden.

React-Beispiel
Blazor-Beispiel
Nur lesen? Behindert?
React TypeScript
Razor
Reagieren Blazor

ManyToManyLookupEdit Baureihe

Parameter

Name
Typ
Default
Beschreibung
ChildContentRenderFragment?
Kindinhalt der Komponente
ContextMainContext?
Kaskadierender Kontext, der diesen Editor für koordinierte Speicheroperationen registriert.
DefaultViewIdGuid?
Gibt an, welche Ansicht beim Durchsuchen verwandter Datensätze standardmäßig verwendet werden soll.
Descriptionstring?
Beschreibung wird im Tooltip angezeigt.
Disabledbool?
Sollte der Editor deaktiviert werden?
DisplayLabelWhenAvailablebool
True
Gibt an, ob eine Etikette angezeigt werden soll, falls verfügbar.
DisplayTooltipWhenAvailablebool
True
Gibt an, ob ein Tooltip angezeigt werden soll, falls verfügbar.
DisplayValidationErrorMessagebool
True
Sollte eine Fehlermeldung zur Validierung angezeigt werden, wenn die Komponente die Validierung nicht besteht?
IsDirtybool
False
Erhält einen Wert, der angibt, ob noch nicht gespeicherte Assoziations- oder Dissoziationsänderungen ausstehen.
IsVisiblebool
True
Ist der Editor sichtbar?
Labelstring?
Text soll als Etikett für den Editor angezeigt werden.
MaximumNumberOfItemsint?
Maximale Anzahl verwandter Datensätze, die ausgewählt werden können.
MaxRecordsReturnedint
20
Maximale Anzahl der Datensätze, die bei der Suche nach verwandten Datensätzen zurückgegeben werden.
MinimumNumberOfItemsint?
Mindestanzahl verwandter Datensätze, die ausgewählt werden müssen, damit der Editor als gültig gilt.
ReadOnlybool?
Sollte der Editor nur lesegeschützt sein?
RelationshipName*string
Der Dataverse-Many-to-Many-Relationship-Name, den dieser Redakteur verwaltet.
Requiredbool?
Sollte der Wert erforderlich sein.
ViewIdsList<Guid>?
Begrenzt, welche Ansichten für das Durchsuchen verwandter Datensätze verfügbar sind; wenn leer, wird die Standard-öffentliche Ansicht verwendet.
Name: ChildContent
Typ: RenderFragment?
Beschreibung: Kindinhalt der Komponente
Name: Context
Typ: MainContext?
Beschreibung: Kaskadierender Kontext, der diesen Editor für koordinierte Speicheroperationen registriert.
Name: DefaultViewId
Typ: Guid?
Beschreibung: Gibt an, welche Ansicht beim Durchsuchen verwandter Datensätze standardmäßig verwendet werden soll.
Name: Description
Typ: string?
Beschreibung: Beschreibung wird im Tooltip angezeigt.
Name: Disabled
Typ: bool?
Beschreibung: Sollte der Editor deaktiviert werden?
Name: DisplayLabelWhenAvailable
Typ: bool
Default: True
Beschreibung: Gibt an, ob eine Etikette angezeigt werden soll, falls verfügbar.
Name: DisplayTooltipWhenAvailable
Typ: bool
Default: True
Beschreibung: Gibt an, ob ein Tooltip angezeigt werden soll, falls verfügbar.
Name: DisplayValidationErrorMessage
Typ: bool
Default: True
Beschreibung: Sollte eine Fehlermeldung zur Validierung angezeigt werden, wenn die Komponente die Validierung nicht besteht?
Name: IsDirty
Typ: bool
Default: False
Beschreibung: Erhält einen Wert, der angibt, ob noch nicht gespeicherte Assoziations- oder Dissoziationsänderungen ausstehen.
Name: IsVisible
Typ: bool
Default: True
Beschreibung: Ist der Editor sichtbar?
Name: Label
Typ: string?
Beschreibung: Text soll als Etikett für den Editor angezeigt werden.
Name: MaximumNumberOfItems
Typ: int?
Beschreibung: Maximale Anzahl verwandter Datensätze, die ausgewählt werden können.
Name: MaxRecordsReturned
Typ: int
Default: 20
Beschreibung: Maximale Anzahl der Datensätze, die bei der Suche nach verwandten Datensätzen zurückgegeben werden.
Name: MinimumNumberOfItems
Typ: int?
Beschreibung: Mindestanzahl verwandter Datensätze, die ausgewählt werden müssen, damit der Editor als gültig gilt.
Name: ReadOnly
Typ: bool?
Beschreibung: Sollte der Editor nur lesegeschützt sein?
Name: RelationshipName*
Typ: string
Beschreibung: Der Dataverse-Many-to-Many-Relationship-Name, den dieser Redakteur verwaltet.
Name: Required
Typ: bool?
Beschreibung: Sollte der Wert erforderlich sein.
Name: ViewIds
Typ: List<Guid>?
Beschreibung: Begrenzt, welche Ansichten für das Durchsuchen verwandter Datensätze verfügbar sind; wenn leer, wird die Standard-öffentliche Ansicht verwendet.

Methoden

Name
Parameter
Typ
Beschreibung
GetRequestsList<OrganizationRequest>
Gibt die ausstehenden Requests.OrganizationRequest Operationen (assoziieren und disassoziieren) zurück, die ausgeführt werden müssen, um die aktuelle Auswahl aufrechtzuerhalten.
GetValidationErrorsList<string>
Gibt Validierungsfehler für die aktuelle Auswahl zurück, einschließlich Verstößen gegen die Regeln zur Mindest- und Maximalanzahl von Artikeln.
RefreshAsyncbool forceRefresh
Task
Weist das Gitter an, die aktuellen Daten aus der bereitgestellten Datenquelle erneut abzurufen und darzustellen.
ResetStatevoid
Löscht alle ausstehenden Änderungen an Assoziationen und Dissoziationen und setzt den Editor auf seinen zuletzt gespeicherten Zustand zurück.
Validatebool
Gibt true zurück, wenn die aktuelle Auswahl die konfigurierten Mindest- und Maximalpunktzahl-Einschränkungen erfüllt.
Name: GetRequests
Typ: List<OrganizationRequest>
Beschreibung: Gibt die ausstehenden Requests.OrganizationRequest Operationen (assoziieren und disassoziieren) zurück, die ausgeführt werden müssen, um die aktuelle Auswahl aufrechtzuerhalten.
Name: GetValidationErrors
Typ: List<string>
Beschreibung: Gibt Validierungsfehler für die aktuelle Auswahl zurück, einschließlich Verstößen gegen die Regeln zur Mindest- und Maximalanzahl von Artikeln.
Name: RefreshAsync
Parameter: bool forceRefresh
Typ: Task
Beschreibung: Weist das Gitter an, die aktuellen Daten aus der bereitgestellten Datenquelle erneut abzurufen und darzustellen.
Name: ResetState
Typ: void
Beschreibung: Löscht alle ausstehenden Änderungen an Assoziationen und Dissoziationen und setzt den Editor auf seinen zuletzt gespeicherten Zustand zurück.
Name: Validate
Typ: bool
Beschreibung: Gibt true zurück, wenn die aktuelle Auswahl die konfigurierten Mindest- und Maximalpunktzahl-Einschränkungen erfüllt.