2015-11-12 2 views
5

Последние выпуски Visual Studio 2015 оставили нашу наценку cshtml в очень хрупком состоянии. Много раз у нас есть значения атрибутов, которые превышают полезную ширину, и нам нужно разделить атрибут на несколько строк, чтобы сделать код более удобочитаемым.Как написать многострочные атрибуты в Visual Studio 2015?

Пример: широкие данные связывают

<div data-bind="someBinding: { hasErrors: bindingObject.HasErrors(duration), hasWarnings: bindingObject.HasWarnings(duration), parameterKey: bindingObject.SelectedObjectKey }, anotherBinding: value, anotherBinding2: value2, AndSoOn: yaddayadda.the.point.is.this.can.get.really.long"> 

Назад в VS 2010/2013 лет, если мы, начиная просто положить возврат каретки в значении атрибута, чтобы разбить его дизайнер не будет, как правило, уже не разобрать HTML надлежащим образом и DOM элементы, следующие за этим, уже не будут действительны ... например, сломанная таблица.

Итак, мы обнаружили, что путем инкапсуляции значения атрибута в пределах @ («...») фактически позволит дизайнеру работать плавно.

Пример: с @() обязательный атрибут

<div data-bind="@("someBinding: { " + 
    "hasErrors: bindingObject.HasErrors(duration), " + 
    "hasWarnings: bindingObject.HasWarnings(duration), " + 
    "parameterKey: bindingObject.SelectedObjectKey }, " + 
    "anotherBinding: value, " + 
    "anotherBinding2: value2, " + 
    "AndSoOn: yaddayadda.the.point.is.this.can.get.really.long")"> 

Ну, хорошая новость здесь является IDE даже помочь с расширением этой строки и когда страница переформатировать себя он будет рад и DOM был в отличная форма. Сервер возьмет этот кусок строки C# и отобразит его на одной линии в производстве, и все было хорошо ...

Пока мы не обновили. VS2015, кажется, ненавидит это, но по совершенно другим причинам. Теперь он раскалывает все, и подсказка говорит «Отсутствует имя атрибута». Когда страница переформатирует это проваливает все ...

enter image description here

Так что я иду на стекле здесь. Это какая-то ошибка или есть ответ, потому что у нас есть большая база кода, которая не хочет перерабатывать это форматирование атрибутов.

Мысли?

+0

и, для записи, VS 2013 + R # 10 не проявляет такого поведения ... поэтому я думаю, что это только w/VS 2015 + R # 10 – beauXjames

+0

Могли бы вы временно приостановить ReSharper и проверить, не было ли это предупреждение все еще существует? Мне просто интересно, потому что нет меню «Инспекция» xxx ''. – ulrichb

+0

Приостановлено и по-прежнему такое же поведение ... поэтому я думаю, что это больше связано с VS, чем с R # ... просто интересно, как R # предоставляет релевантные опции для «устранения» не-проблем ... – beauXjames

ответ

2

Visual Studio 2015 Update 1 содержит решение этой проблемы.

+0

хорошая точка ... Я удалил ссылку «update 1» в основном вопросе ... – beauXjames