È possibile rinominare un nome di spazio dei nomi in un'API esistente senza violare il codice degli utenti?Come rinominare uno spazio dei nomi C# in un'API esistente senza violare il codice degli utenti?
risposta
no, non è possibile. Il meglio che puoi è rinominare spazio dei nomi in fila indiana: http://msdn.microsoft.com/en-us/library/sf0df423(VS.80).aspx
E 'possibile rinominare un nome del namespace in un'API esistente senza codice utenti rottura?
Se si modifica lo spazio dei nomi in cui si trova un oggetto, si interromperà il codice che lo fa riferimento.
È possibile generare un gruppo di oggetti nel vecchio spazio dei nomi che solo delegano le loro chiamate a quelli nuovi (proxy trasparenti in vigore) e quindi deprecano gli oggetti proxy in un determinato momento in futuro.
Forse piuttosto orribile a seconda della dimensione/complessità del codice base però.
migliore potrebbe semplicemente essere una risposta non tecnico di avviso agli utenti che una variazione dello spazio dei nomi API si sta verificando in anticipo di esso di essere rilasciato. Supponendo che stiano attivamente sviluppando i clienti, una ricerca/sostituzione non è la fine del mondo per loro.
Se non ci sono numeri significativi NON attivamente lo sviluppo di clienti, allora si dovrà continuare a un ramo di manutenzione/bug-fix per un po 'con il vecchio spazio dei nomi.
Se si ha accesso al codice chiamante API è possibile utilizzare un alias per fare riferimento al nuovo spazio dei nomi.
In questo modo, dal punto di vista del chiamante API, non si sono verificati cambiamenti.
- 1. Comune modo Lisp per rinominare uno spazio dei nomi
- 2. "template" uno spazio dei nomi
- 3. Spazio dei nomi XSD nello spazio dei nomi C#
- 4. C++: funzioni Extern C all'interno di uno spazio dei nomi
- 5. Come posso fare esplicitamente riferimento a uno spazio dei nomi che racchiude quando esiste uno spazio dei nomi in linea?
- 6. Usa XmlSerializer per aggiungere uno spazio dei nomi senza prefisso
- 7. Funzioni spazio dei nomi C++
- 8. Eseguire codice incorporato da uno spazio dei nomi diverso
- 9. Che cos'è uno spazio dei nomi?
- 10. Che cosa significa "dichiarare indirettamente uno spazio dei nomi all'interno di un altro spazio dei nomi"?
- 11. Spazio dei nomi e variabili statiche C++
- 12. Inserimento XQuery senza spazio dei nomi SQL2008
- 13. funziona con il pacchetto senza spazio dei nomi in R
- 14. Come verificare l'esistenza di uno spazio dei nomi in php
- 15. Come dichiarare uno spazio dei nomi in XAML WPF?
- 16. Puoi inserire una libreria in uno spazio dei nomi?
- 17. Unit Testing C++ Code in uno spazio dei nomi senza nome
- 18. JAXB Fragment Marshal senza spazio dei nomi
- 19. ReSharper: rinominare lo spazio dei nomi non disponibile?
- 20. Come avviare REPL in uno spazio dei nomi definito dall'utente?
- 21. Costante spazio dei nomi in C#
- 22. Problema di spazio dei nomi in C++
- 23. Come si può emulare lo spazio dei nomi in C?
- 24. Come si crea uno spazio dei nomi Python (valore argparse.parse_args)?
- 25. Come si importa un enum in uno spazio dei nomi diverso in C++?
- 26. Classe AC# con uno spazio dei nomi null
- 27. Corrispondenza spazio dei nomi
- 28. Come utilizzare MySQLi all'interno di uno spazio dei nomi
- 29. Rientro spazio dei nomi in Visual Studio con C#
- 30. Carica Ruby gem in uno spazio dei nomi definito dall'utente