Как реализовать проверки времени разработки для XAML, которые приводят к ошибкам компиляции? - PullRequest
0 голосов
/ 03 декабря 2008

Как обеспечить, чтобы разработчики, пишущие XAML в Visual Studio, следовали определенным стандартам, и необходимо выполнить проверки, а также, если выданы недопустимые ошибки времени компиляции.

Например, убедившись, что все выражения привязки данных (некоторые из них очень длинные) написаны правильно, согласно «пользовательской проверке», которую я хотел бы реализовать во время разработки. Мол,

<TextBox Text="{Binding Source={StaticResource CALCULATED}, Converter={StaticResource XPathConverter}, ConverterParameter=@FIRSTNAME_STRING, XPath=@FIRSTNAME}"/>

В приведенном выше примере, если выражение привязки в свойстве Text не имеет этого формата , должна быть ошибка компиляции .

Есть ли способ сделать это?

Ответы [ 2 ]

2 голосов
/ 03 декабря 2008

Нет встроенного способа сделать это. Лучший способ получить этот результат - запустить пользовательский инструмент для ввода. Это потребует много усилий с вашей стороны, потому что это потребует синтаксического анализа файла самостоятельно, но вы должны быть в состоянии заставить этот сценарий работать.

Пример сайта для создания собственного генератора

http://www.drewnoakes.com/snippets/WritingACustomCodeGeneratorToolForVisualStudio/

0 голосов
/ 18 декабря 2008

Извините, языковая служба XAML также не может быть расширена. Лучший способ сделать это сегодня - это создать задачу сборки. Я думаю, что вы можете подключить его к цели MarkupCompilePass1DependsOn, и он будет вызываться автоматически, когда пользователь сохраняет или изменяет файл XAML. Вам все еще нужно отсканировать файл от нас, но вам не нужно ждать фактической сборки, чтобы это сработало. Это прямая цитата одного из архитекторов Microsoft, который в настоящее время работает над дизайнерами WPF.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...