Sto provando a creare un pacchetto NuGet che aggiunge automaticamente e aggiornabile il dizionario di analisi del codice della nostra azienda.Aggiungi set di regole di analisi del codice tramite il pacchetto nuget
Il set di regole viene aggiunto nella cartella del contenuto e ora voglio utilizzare lo script install.ps1 per aggiungere la serie di regole nel file di progetto.
Ho capito che la strada da percorrere sarebbe stata l'uso di envDTE, ma non trovo molta documentazione utile su di esso oltre a questo travolgente oggetto grafico in cui non riesco a trovare il nodo CodeAnalysisRuleset.
http://msdn.microsoft.com/en-us/library/za2b25t3(v=vs.100).aspx
Sto seguendo la strada giusta?
Esiste qualche tutorial/documentazione pertinente su come utilizzare envDTE in NuGet powershell?
Come posso eseguire/eseguire il debug del mio script di installazione senza doverlo effettivamente aggiungere a un pacchetto e installarlo su un progetto?
Sidenote
Anche se @Nicole Calinoiu ha mostrato il modo migliore, questo pezzo di informazione potrebbe tornare utile più avanti:
foreach ($config in $project.ConfigurationManager){
$config.Properties.Item("CodeAnalysisRuleSet").Value = "myruleset.ruleset"
}
Dannazione! L'ho appena trovato ieri sera! E ho finito il pacchetto per importare anche il dizionario. Grazie però :) –
C'è qualcosa che mi manca qui? Ho creato il file props, ma NuGet aggiunge CodeAnalysisDictionary come un tipo di 'Content' quando dovrebbe essere un tipo di' CodeAnalysisDictionary'. Non sono sicuro del perché. Funziona bene quando uso 'Compile' per i miei file cs però. –
Questo perché l'interfaccia utente VS utilizza regole diverse per decidere il tipo di contenuto rispetto all'analisi del codice dei file MSBuild. Nonostante l'anomalia di visualizzazione dell'interfaccia utente, dovresti scoprire che il tuo dizionario viene utilizzato dall'analisi del codice. –