Я попробовал большинство предложений выше, и теперь я пришел к самому простому с одной строкой. Комбинировать 2 анонимных объекта атрибутов html, объявив, что один из них увядает как «объект».
@Html.TextBoxFor(m => m.Email, !isEdit ? new { id = "email_box" } : new { id = "email_box", @readonly = isEdit ? "readonly" : "false" } as object)
У меня была другая первопричина для "LinkAssembliesTask, отказавшего" ошибка.
я обновлял пакеты NuGet и испортил ссылки.
=====
Скажем, у меня было два проекта:
NetStandardProject
Имеет ссылку на Assembly1.
Assembly1 имеет класс CoolGuy с CoolGuy. Flex () метод.
AndroidProject, который ссылки NetStandardProject.
Имеет ссылку на Assembly2.
Assembly2 имеет класс CoolGuy, но никакого CoolGuy. Flex () метод.
компоновщик вытягивал в Assembly2, ища CoolGuy. Flex (), затем аварийно завершился с "LinkAssembliesTask, отказавшим", указав, что он не мог найти Flex () методом. Это не могло, потому что это смотрело в [1 123] неправильный блок .
скомпилированный проект NetStandard, потому что это ссылалось на Assembly1 и действительно не заботилось о том, на что ссылался AndroidProject. Это создается независимо. Но когда компоновщик загрузил Assembly2, он использовал "неправильный" блок.
я закончил вид того, чтобы везти и понял, что один из блоков был не использован, таким образом, я удалил его, и сборка, за которой следуют.
Hope, которая помогает кому-то по линии.
премия =====
: Если Вы хотите видеть, какой блок это принимает решение искать, позвольте сбою сборки, то перейдите в {проект }\\obj {профиль} {android_version }\\android\assets папка и найдите dll. Вы, вероятно, будете в состоянии проверить, что это не там, и дайте Вам начальную точку понимания, почему это перестало работать.