是否存在在 C#“using”语句中声明的命名空间不存在时引发的特定异常?
我想要这样的代码结构:
public class TestClass {
public bool CheckNamespace() {
try
{
using Not.Existing.CsNamespace;
return true;
}
catch( ???Exception e )
{
return false
}
}
}
我正在考虑这个,因为我希望有一个 Cs 脚本能够检查给定的命名空间是否存在。我正在使用 Unity(也许它存在另一种比这个想法更好的秘密方法或技巧)。
谢谢! ;)
大家好,
是否存在在 C#“using”语句中声明的命名空间不存在时引发的特定异常?
我想要这样的代码结构:
public class TestClass {
public bool CheckNamespace() {
try
{
using Not.Existing.CsNamespace;
return true;
}
catch( ???Exception e )
{
return false
}
}
}
我正在考虑这个,因为我希望有一个 Cs 脚本能够检查给定的命名空间是否存在。我正在使用 Unity(也许它存在另一种比这个想法更好的秘密方法或技巧)。
谢谢! ;)
您可以使用 System.Reflection 库和下面的代码来检查您的项目中是否存在某个命名空间。如果找到命名空间,则该方法返回 true,如果未找到命名空间,则返回 false。
using System.Reflection;
public bool NameSpaceExists(string namespace){
var exists = false;
//loop through the assemblies and check the namespaces against ours
foreach (Assembly assembly in AppDomain.CurrentDomain.GetAssemblies())
{
foreach (Type type in assembly.GetTypes())
{
if (type.Namespace == namespace)
{
exists = true;
}
}
}
return exists;
}