ошибка в csproj - дублирующийся элемент

Отражательная или сериализация XML - то, что Вы ищете.

Используя отражение Вы могли искать тип с помощью чего-то вроде этого

public IYourInterface GetClass(string className)
{
    foreach (Assembly asm in AppDomain.CurrentDomain.GetAssemblies()) 
    {            
        foreach (Type type in asm.GetTypes())
        {
            if (type.Name == className)
                return Activator.CreateInstance(type) as IYourInterface;
        }   
    }

    return null;
}

Примечание, что это пройдет все блоки. Вы могли бы хотеть уменьшить его, чтобы только включать в настоящее время выполняющийся блок.

Для присвоения значений свойств Вы также используете отражение. Что-то вроде

IYourInterface o = GetClass("class1");
o.GetType().GetProperty("prop1").SetValue(o, "foo", null);

, В то время как отражение могло бы быть наиболее гибким решением, необходимо также смотреть на сериализация XML для пропуска выполнения тяжелого подъема себя.

56
задан netmajor 27 December 2010 в 15:34
поделиться

1 ответ

Я знаю, что это - старое сообщение, но я нашел это лучшее решение, которое могло помочь другим, у которых в настоящее время есть эта проблема.

  • В Solution Explorer, выберите файл/файлы, указанный в сообщении об ошибке или папке, содержащей эти файлы.

  • Right-click затем выбор Exclude From Project.

  • Щелчок Refresh кнопка.

  • Выбор файлы или папка снова, right-click затем выбор Include In Project.

enter image description here

0
ответ дан 26 November 2019 в 17:18
поделиться
Другие вопросы по тегам:

Похожие вопросы: