La tua domanda "Come verificare se la stringa è un namespace" è valida solo se si considera dove si sta verificando per spazi dei nomi.
Gli spazi dei nomi sono prefissi ai nomi delle classi e le classi sono associate a un assieme. Per verificare se esiste uno spazio dei nomi, è necessario decidere quali gruppi sono pronti a esaminare per trovare l'esistenza dello spazio dei nomi.
Una volta deciso che le assemblee si sono preparati a guardare attraverso, si può scorrere attraverso di loro per l'esistenza di un particolare spazio dei nomi in questo modo:
public bool NamespaceExists(IEnumerable<Assembly> assemblies, string ns)
{
foreach(Assembly assembly in assemblies)
{
if(assembly.GetTypes().Any(type => type.Namespace == ns))
return true;
}
return false;
}
fonte
2010-04-09 10:14:09
Btw, non è possibile utilizzare riservato parola chiave 'namespace' come nome di variabile;) – abatishchev
Solo per motivi di correttezza, dovresti @ -izzare il parametro namespace, namespace è una parola chiave C# :) – Marek
Oh, così schizzinoso! Sono abbastanza sicuro che la risposta sia leggibile senza, ma una modifica è tua. :) –