Инструменты для преобразования опции строгого кода в вариант строгого включения? - PullRequest
4 голосов
/ 28 марта 2010

Я должен взять на себя проект, написанный на vb.net, который содержит более 400 тыс. Строк кода, написанного в режиме строгого отключения. Я хочу собрать его с опцией строго по первому, прежде чем делать что-то еще - что, возможно, конвертирует его в C #. Я обнаружил, что тысячи строк кода вызывают ошибку компиляции, в основном о неявных приведениях типов.

Есть ли какой-нибудь инструмент, который помог бы заставить его компилироваться в строгом режиме, если я не хочу исправлять каждую строку вручную? Потому что очень больно добавлять вызов CStr / CInt в каждую строку кода самостоятельно.

Ответы [ 3 ]

5 голосов
/ 03 августа 2010

Просто добавив CInt, CStr или convert.tostring, вы ничего не получите. вам нужно взглянуть на проект в каждом конкретном случае и выяснить, почему эти типы данных не совпадают с нуля.

3 голосов
/ 05 августа 2010

Как насчет смешивать и сочетать только для того, чтобы вы работали. Это то, что я думаю, ты должен сделать. Установите настройку проекта на «Option строго по» Для всех отдельных файлов .vb, которые имеют ошибку компиляции ... в качестве первой строки в этом файле укажите «Option strict Off». (это переопределит настройки всего проекта)

Теперь у вас есть проект компиляции.

Следующее задание - когда у вас есть время выбрать отдельный файл (поиск «Вариант строго выключен») (или когда вы изменяете файл по другой причине) Удалите опцию «Строгое выключено» из отдельного файла и позвольте VisualStudio автоматически исправлять теги, чтобы исправить ошибки.

0 голосов
/ 28 марта 2010

То есть вы хотите использовать Option Strict и не использовать его одновременно?

Я скажу вам, что: сначала установите Option Strict на On, затем в разделе Warning Configurations измените условие «Неявное преобразование» с «Error» на «Warning» (или «None»). Затем вы увидите, что в конфигурации написано: Option Strict - «Custom».

Но не обманывайте себя: эта пользовательская настройка не является Строгой, поскольку она позволяет неявным вещам иметь место. Вы должны спросить себя: «Почему я хочу скомпилировать это под опцией Strict?».

...