Атрибут отсутствует в сгенерированном коде WinForm - PullRequest
2 голосов
/ 05 мая 2010

Определения методов в любом файле * .Designer.cs winform, созданном Visual Studio, не украшены атрибутами [GeneratedCodeAttribute]. В результате сгенерированный код анализируется, когда я запускаю метрики кода или анализ кода. Кто-нибудь знает, почему атрибут не предоставлен (в конце концов - это сгенерированный код )? Было бы безопасно добавить его самому (исчезнет ли он при повторной генерации кода или генерация происходит только в теле метода)? Если бы я добавил его, какими были бы подходящие строки инструмента и версии для Visual Studio 2010?

1 Ответ

4 голосов
/ 05 мая 2010

Ну, это сложно, на самом деле это не сгенерированный автоматически код. Файл Designer.cs создается шаблоном элемента проекта. Сериализатор времени разработки Windows Forms только регенерирует тело метода InitializeComponent () и добавляет объявления элементов управления в конец файла.

Это не поможет вам решить вашу проблему. Самое эффективное исправление, которое я могу придумать, - это просто отредактировать шаблон. На моей машине это c: \ program files \ microsoft visual studio 10.0 \ common7 \ ide \ itemtemplatescache \ csharp \ windows forms \ 1033 \ form.zip \ form.designer.cs, поместите атрибут перед методом. То, что вы используете, на самом деле не имеет значения, ни один инструмент не будет ожидать, что этот атрибут будет там.

...