C# GetCustomattributes из имени класса
Можно ли получить пользовательские атрибуты из имени класса в виде строки?
как то так (что не работает)
Type myType = Type.GetType("MyClass");
MemberInfo info = myType // typeof(myType);
object[] atts = info.GetCustomAttributes(true);
2 ответа
Решение
Ты почти там. Вы пропустили пространство имен.
Type myType = Type.GetType("System.String");
object[] atts = myType.GetCustomAttributes(true);
В твоем случае
Type myType = Type.GetType("YourNameSpace.MyClass");//this should work
Обратитесь к Type.GetType для получения дополнительной информации
var asnames = Assembly.GetExecutingAssembly().GetReferencedAssemblies();
var asmname = asnames.FirstOrDefault(x => x.Name == assemName);
Assembly.Load(asmname);
Используйте приведенный выше код для предварительной загрузки сборки (если она существует в указанной сборке)
Похоже, ты почти там.
использование object[] atts = Type.GetType("MyNamesapce.MyClass").GetCustomAttributes(true);
Работал без нареканий для меня
Возможно, вы пропустили упоминание пространства имен?
Проверьте http://msdn.microsoft.com/en-us/library/system.attribute.getcustomattributes.aspx