C# 使用阻止在VB.NET中编译的自定义文本创建错误(#C中的错误#)
您可以添加预处理器指令以在C#中的编译时导致错误,如下所示:C# 使用阻止在VB.NET中编译的自定义文本创建错误(#C中的错误#),c#,vb.net,visual-studio-2010,error-handling,user-defined,C#,Vb.net,Visual Studio 2010,Error Handling,User Defined,您可以添加预处理器指令以在C#中的编译时导致错误,如下所示: #error This will cause a divide by zero 如何在vb.net中执行相同的操作 或 是否有其他方法可以创建一个在Errorlist中提供自定义有用信息的错误 TLDR:我想在VB.NET中做类似的事情: 没有与 #error 在VB.Net中 我发现没有办法添加有意义的错误来阻止编译。这里有一种方法可以实现您想要的。它并不完美。但它确实符合您的标准: 防止编译 将自定义文本放入错误列表窗口
#error This will cause a divide by zero
如何在vb.net中执行相同的操作
或
是否有其他方法可以创建一个在Errorlist中提供自定义有用信息的错误
TLDR:我想在VB.NET中做类似的事情:
没有与
#error
在VB.Net中
我发现没有办法添加有意义的错误来阻止编译。这里有一种方法可以实现您想要的。它并不完美。但它确实符合您的标准:
- 防止编译
- 将自定义文本放入错误列表窗口
您还可以声明带有sure编译器错误的变量,例如:
Dim error As String=“这是一个非常有用的描述”
这样就避免了所有的下划线。
这将自动导致编译错误(“关键字作为标识符无效”),而不是警告
例如:
#if _A_DEPRECATED_DEFINE_
DIM error As String = "remove the define: is deprecated!"
#end if
而不仅仅是反对票。我需要澄清的内容的评论会很好…没有看到任何这样做的指令。下面是vb.net指令的MSDN页面:似乎很确定没有任何等价物。不确定为什么会有反对票和“不清楚”的接近票。这实际上是一个好的、清楚的、简明的问题。。。试着用谷歌搜索一下,我什么也没找到。@tnw同意——我找不到任何地方有人提出了可行的解决方案。根本没有指令。你能做的最好的事情就是键入不可编译的文本。。。可能是这样的:
#如果调试(换行符)从不编译调试版本!(新行)#如果
这确实会导致编译器错误,则结束,但OP希望错误文本出现在Visual Studio的错误列表窗口中(而不是简单地产生编译器错误,这可以通过多种方式实现)。