У меня есть следующий оператор linq
builtIn = (from type in Assembly.GetExecutingAssembly().GetTypes()
where type.IsClass && type.Namespace.ToUpper().StartsWith("PD3.MODULES.BUILTIN.")
let onStartMethod = type.GetMethod("Init")
where onStartMethod != null
select onStartMethod
);
но это работает, только если я пропущу
&& type.Namespace.ToUpper().StartsWith("PD3.MODULES.BUILTIN")
часть: (
Далее по коду, я должен принять это во внимание, используя
if (builtInInit.ToString() == "Pd3.Module Init()")
но мне действительно не нравится это решение, так что вот мой вопрос из двух частей
- Есть ли лучший способ получить методы, в которых условие пространства имен корректно?
и
- Почему происходит сбой type.Namespace?
С уважением,
Стиг