Я пишу класс клиента, который будет читать файлы CS и выплевывать информацию на основе имен методов и их различных параметров.Получить тип объекта из строкового значения
Это, по существу, читает каждую строку, ища ключи (общедоступные, классные и т. Д.), А затем видит, что все это значит. В любом случае этот бит работает отлично, у меня возникают проблемы с работой с различными различными типами.
Так что мне нужно сделать, это выяснить, является ли тип одним из найденных в .Net, или что-то, что я создал, я действительно не беспокоюсь, насколько это возможно, пока у меня есть способ сообщить ,
Я пробовал Type t = Type.GetType("My.Namespace.Classname");
, но это просто возвращает null даже с полным пространством имен и именем моего пользовательского объекта класса. Однако если я должен был сделать тот же код, но с System.String, он отлично работает, но я не могу объяснить каждое возможное пространство имен во всей структуре. Это будет означать, что мне нужен способ получить тип без полного пространства имен или узнать, как проверить мои собственные пользовательские объекты с помощью GetType.
Можно ли предложить какие-либо предложения о том, как это сделать? Даже если он создавал новый экземпляр объектов, которых было бы достаточно, но опять же у меня нет полного пространства имен для .Net-объектов.
Редактировать: Немного фона Что я делаю, это чтение классов, которые я создал в StreamReader, потому что я создаю их много, и мне нужно делать между объектами, что одна система будет способный понять, и другой, поэтому этот код будет читать все и просто создавать для меня отображение. И в большинстве случаев это совершенно нормально, только когда у меня есть пользовательские типы, поэтому я хочу их идентифицировать.
Используйте 'Roslyn' для анализа исходного кода на C#. –
Итак, вы разбираете файлы кода и пытаетесь определить, является ли тип, используемый в коде, типом .NET или стороннего типа? –
http://msdn.microsoft.com/en-us/library/w3f99sx1(v=vs.110).aspx – Heaven42