2014-10-05 5 views
1

При компиляции кода VB.NET по умолчанию компилятор не дает уведомления об ошибке, если функция не возвращает значение.Возврат Ошибка при «возврате функции возвращаемого значения собственного значения без возвращаемого значения» с помощью CodeDOM

Вы можете изменить это в соответствии с параметрами компилятора проекта, чтобы вернуть ошибку «функция, возвращающая тип встроенного значения без возвращаемого значения».

Просто интересно, можно ли достичь этого с классом CodeDOM с помощью VBCodeProvider?

Dim provider As New Microsoft.VisualBasic.VBCodeProvider 
Dim params As New CompilerParameters 
Dim results As CompilerResults 

With params 
    .GenerateExecutable = False 
    .GenerateInMemory = True 
    .IncludeDebugInformation = False 
End With 

'Compile 
results = Provider.CompileAssemblyFromSource(params, Source) 

Return results 
+2

'params.WarningLevel = 4' и' params.TreatWarningsAsErrors = True' будет самым строгим кодом CodeDOM. Я не уверен, как это обрабатывается. – Plutonix

+0

Спасибо. Именно то, что я ищу. – Robert

ответ

1

Вы можете задать контроль ошибок с помощью CompilerParams:

With params 
    .GenerateExecutable = False 
    .GenerateInMemory = True 
    .IncludeDebugInformation = False 
    ' add: 
    .WarningLevel = 4 
    .TreatWarningsAsErrors = True 
End With 

WarningLevel относится к этой настройке в опции C# Compile вкладки, но не много документации по нему для CodeDOM. Это будут самые строгие настройки, поэтому тот, который вам интересен, должен быть там.

Смежные вопросы