Если вы хотите определить несколько атрибутов и условно читать только без дублирования других атрибутов, вы можете использовать словарь вместо анонимных типов для атрибутов.
, например
Dictionary<string, object> htmlAttributes = new Dictionary<string, object>();
htmlAttributes.Add("class", "myCSS");
htmlAttributes.Add("data-attr1", "val1");
htmlAttributes.Add("data-attr2", "val2");
if (Model.LoggedInData.IsAdmin == false)
{
htmlAttributes.Add("readonly", "readonly");
}
@:User: @Html.TextBoxFor(
m => m.User,
htmlAttributes)