Livelli della soluzione
La disposizione in livelli delle soluzioni viene implementata a livello di componente. Le soluzioni gestite e non gestite esistono a differenti livelli in un ambiente di Microsoft Dataverse. In Dataverse, vi sono due livelli distinti:
livello non gestito Tutte le soluzioni non gestite importate e le personalizzazioni ad hoc sono disponibili in questo layer. Tutte le soluzioni non gestite condividono un singolo livello non gestito.
Livelli gestiti Tutte le soluzioni importate e gestite e la soluzione di sistema esistono a questo livello. Quando sono installate più soluzioni gestite, l'ultima si trova sopra la soluzione gestita installata precedentemente. Ciò significa che la seconda soluzione ad essere installata può personalizzare quella installata in precedenza. Quando due soluzioni gestite hanno definizioni in conflitto, il comportamento di runtime è "L'ultima vince" oppure viene implementata una logica di unione. Se si disinstalla una soluzione gestita, la soluzione gestita al di sotto diventa effettiva. Se disinstalli tutte le soluzioni gestite, viene applicato il comportamento predefinito definito nella soluzione di sistema. Alla base del livello gestito si trova il livello di sistema. Il livello di sistema contiene le entità e i componenti necessari per il funzionamento della piattaforma.
Disposizione in livelli in una soluzione gestita
Per ogni componente gestito, vi sono livelli in una soluzione che, a seconda che siano state importate una o più patch o un aggiornamento in sospeso alla soluzione, può includere i seguenti livelli:
Base In fondo alla soluzione layer "stack" si trova la base layer. Questo livello include l'autore di soluzioni, che identifica il proprietario del componente e le proprietà gestite ad esso associate.
Top Il layer superiore è considerato l'attuale layer e definisce il comportamento in fase di esecuzione del componente. Il livello superiore può essere un aggiornamento o una patch, oppure se alla soluzione non sono state applicate patch o aggiornamenti, la soluzione di base determina il comportamento di runtime del componente.
Livelli aggiunti con aggiornamenti:
Patch Se il componente ha una o più patch di soluzione importate, queste vengono impilate sopra la base layer, con la patch più recente che si trova sopra quella precedente.
Aggiornamento in sospeso Se viene importato un aggiornamento graduale (denominato _Upgrade), questo risiede sopra i livelli base e patch (se presenti).
Importante
L'uso delle patch è sconsigliato. Ulteriori informazioni: Creare patch di soluzioni
L'immagine seguente mostra un esempio di livelli della soluzione per una colonna personalizzata che visualizza la soluzione di base, una patch e un aggiornamento in sospeso.
Per informazioni su come visualizzare i livelli per un componente in una soluzione, vedi Livelli di soluzioni.
Comportamento di unione
I creatori di soluzioni devono comprendere il comportamento di unione quando una soluzione viene aggiornata o quando vengono installate più soluzioni che influiscono sullo stesso componente. Nota che verranno uniti solo i tipi di componenti di app basate su modello, moduli e mappe del sito. Tutti gli altri componenti utilizzano il comportamento "il livello superiore vince".
Comportamento "I migliori vincitori"
Con l'eccezione dei componenti dell'app, del modulo e della mappa del sito basati su modello, altri componenti della soluzione utilizzano il comportamento "i migliori vincono" in cui il livello che risiede nella parte superiore determina il funzionamento del componente in fase di runtime dell'app. Un livello superiore può essere introdotto da un aggiornamento graduale (in sospeso).
Livello superiore introdotto da un aggiornamento in sospeso
Di seguito è riportato un esempio del comportamento di un componente di maggior successo introdotto da una fase per l'aggiornamento a una soluzione. Maggiori informazioni: Applicare l'aggiornamento nell'ambiente di destinazione
L'attuale livello superiore (di base) ha la proprietà lunghezza massima della colonna di testo Commenti per la tabella dell'account utilizzando l'impostazione predefinita di 100.
Un aggiornamento della soluzione viene importato utilizzando l'opzione fase per l'aggiornamento, che crea un nuovo livello superiore. L'aggiornamento in sospeso include la colonna di testo Commenti per la tabella dell'account con il valore della proprietà lunghezza massima cambiato in 150.
In questa situazione, la colonna Commenti per i record dell'account consentirà fino a un massimo di 150 caratteri durante il tempo di esecuzione dell'app.
Comportamento di unione con aggiornamenti della soluzione
Come descritto nella sezione precedente, le patch e un aggiornamento graduale vengono impilati sopra la soluzione di base. Questi possono essere uniti selezionando Applica aggiornamento nell'area Soluzioni di Power Apps, che appiattisce i livelli e crea una nuova soluzione di base.
Comportamento di unione con più soluzioni
Quando prepari la soluzione gestita per la distribuzione, tieni presente che un ambiente potrebbe già disporre di più soluzioni installate o che altre soluzioni potrebbero essere installate in un secondo momento. Crea una soluzione che segue le procedure consigliate in modo che la soluzione non interferisca con altre soluzioni. Ulteriori informazioni: Utilizzare le soluzioni segmentate
I processi utilizzati da Dataverse per unire le personalizzazioni evidenziano la gestione della funzionalità della soluzione. Sebbene venga effettuato ogni sforzo per preservare la presentazione, alcune incompatibilità tra le personalizzazioni potrebbero richiedere che la risoluzione calcolata modifichi alcuni dettagli di presentazione a favore della gestione delle funzionalità di personalizzazione.