Perché è sbagliato modificare il file UIMap.designer.cs in un test dell’interfaccia utente codificata in Visual Studio?

Ho letto che è male modificare il file UIMap.Designer.cs, tuttavia, non capisco perché.

Per MSDN: “Non modificare direttamente il file UIMap.designer.cs. In tal caso, le modifiche al file verranno sovrascritte.” http://msdn.microsoft.com/en-us/library/dd380782.aspx

Qualcuno sa cosa viene sovrascritto? Questo significa che se il file UIMap.uitest viene modificato dopo il file Designer, il file del designer viene invertito? per favore aiuto.

Il file UIMap.designer.cs viene rigenerato dal file UIMap.uitest dopo ogni modifica (che viene salvata) nel file UIMap.uitest . C’è un commento in cima al file che dice che è un file generato e che le modifiche andranno perse.

Un gran numero di modifiche che a prima vista sembrano richiedere la modifica del codice nel file del designer possono essere apportate modificando tramite i pannelli delle proprietà delle azioni e i controlli dell’interfaccia utente mostrati nell’editor UIMap. Alcune modifiche richiedono la modifica manuale. Per questi c’è un comando (pulsante o tasto destro del mouse) per spostare un’azione nel file UIMap.cs in cui può essere modificata ed estesa quanto desiderato. Entrambi questi file UIMap … cs specificano partial nelle loro intestazioni di class, quindi entrambi contribuiscono allo stesso UIMap.

Quando una sola azione di un metodo richiede l’editing manuale, può valere la pena dividere quel metodo in due o tre pezzi per posizionare l’azione che richiede modifiche nel proprio metodo. Il comando di divisione è disponibile tramite un pulsante o il menu di scelta rapida. Dopo aver isolato l’azione, il suo metodo può essere spostato nel file UIMap.cs .

Quando sposti i metodi e poi li modifichi, ti consiglio il seguente ordine di attività.

  1. Se necessario: dividere il metodo in pezzi, quindi rinominare i metodi di divisione utilizzando l’editor UIMap. Salvare il file UIMap.uitest che causa la rigenerazione del file del designer. Quindi aggiungere chiamate ai metodi split e rinominati. Costruisci il test e, forse, controlla che il test funzioni ancora come previsto.

  2. Sposta il metodo nel file UIMap.cs usando l’editor UIMap.

  3. Salva tutti i file che causano la rigenerazione del file del designer. L’omissione di questo salvataggio può causare errori confusi da visualizzare nei file C #.

  4. Modifica il codice appena trasferito nel file UIMap.cs .

L’editor della mappa dell’interfaccia utente è standard con Visual Studio 2012. Per Visual Studio 2010 l’editor è stato aggiunto da Feature Pack 2.

un’altra opzione è creare un altro file di class, ad esempio, creare Class1.CS e spostare tutto il codice da UIMap.Designer.cs e UIMap.cs a Class1.cs . Ora ogni volta che registri qualcosa, il codice rigenerato verrà generato automaticamente nel file UIMap.Designer.cs , quindi copia lo stesso codice in Class1.cs e modifica il codice lì se necessario, e mentre this.Class1.launch(); test principale chiama this.Class1.launch(); eseguirà il codedTest .

Inoltre ti salverà dal dividere i metodi in UIMap.uitest e poi spostarlo su UIMap.cs e anche ci sarà una class separata che includa tutte le tue modifiche a codedUItest .

Apri il file UIMap.uitest in Visual Studio e fai clic su “Sposta il codice su UIMap.cs”

inserisci la descrizione dell'immagine qui

la tua funzione passerà da designer.cs a UiMap.cs