编译VB.NET代码时,默认情况下,如果函数没有返回值,编译器不会给出错误通知。
您可以在项目的编译器选项下更改此项,以便在“函数返回内部值类型而不返回值”时返回错误。
只是想知道是否可以使用VBCodeProvider与CodeDOM类实现相同的功能?
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
答案 0 :(得分:1)
您可以通过CompilerParams
指定错误控制:
With params
.GenerateExecutable = False
.GenerateInMemory = True
.IncludeDebugInformation = False
' add:
.WarningLevel = 4
.TreatWarningsAsErrors = True
End With
WarningLevel
与C#Compile选项卡选项中的设置有关,但CodeDOM上没有很多文档。那些将是最严格的设置,所以你感兴趣的那个应该在那里。