Non consentire la pubblicazione di build di debug per la distribuzione ClickOnce

StackOverflow https://stackoverflow.com/questions/47107

  •  09-06-2019
  •  | 
  •  

Domanda

Esiste un modo per impedire la pubblicazione di build di debug con ClickOnce?

Voglio solo consentire il passaggio delle build di rilascio, ma in questo momento l'errore umano fa sì che una build di debug sfugga di tanto in tanto.

Stiamo pubblicando la build da Visual Studio.

È stato utile?

Soluzione

Una cosa che puoi fare è aggiungere una condizione al file .csproj o .vbproj che MSBuild controllerà durante una compilazione.

La condizione controllerà se è in corso una pubblicazione e controllerà se la build è una build di debug, quindi eseguirà qualcosa come eseguire uno strumento esterno o interrompere in altro modo il processo di compilazione o provocarne il fallimento.

Un esempio potrebbe essere qualcosa del genere:

<Choose>
    <When Condition=" '$(Configuration)'=='Debug' ">
        <Exec Command="C:\foo.bat" ContinueOnError="false" />
    </When>
 </Choose>

Dove foo.bat è un file batch che restituisce un valore diverso da zero, impedendo così la pubblicazione.

Altri suggerimenti

Ho iniziato a modificare i file .csproj per includere il seguente codice per generare un errore per le distribuzioni di debug, impedendo di fatto che la distribuzione avvenga:

<!-- The following makes sure we don’t try to publish a configuration that defines the DEBUG constant -->
<Target Name="BeforePublish">
    <Error Condition="'$(DebugSymbols)' == 'true'" Text="You attempted to publish a configuration that defines the DEBUG constant!" />
</Target>

Basta posizionarlo alla fine del file, subito prima del file </Project> etichetta.

(fonte originale: http://www.nathanpjones.com/wp/2010/05/preventing-clickonce-publishing-a-debug-configuration/comment-page-1/#comment-625)

Ho scelto un'altra soluzione che ha funzionato per me:

Non ho potuto modificare il mio processo di creazione.Così ho fatto UtensiliPersonalizzare... e modifica il testo dell'azione, aggiungendo un avviso come "Pubblica [CONFIGURA PER RILASCIARE!]" e posizionando il pulsante Pubblica accanto all'opzione di configurazione Debug/Rilascio.È facile!

In questo modo ho ridotto notevolmente il rischio di errore umano.Quei pulsanti dovrebbero essere sempre insieme.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top