Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# “怎么说?”;“是否在开发环境上?”;?_C#_Visual Studio - Fatal编程技术网

C# “怎么说?”;“是否在开发环境上?”;?

C# “怎么说?”;“是否在开发环境上?”;?,c#,visual-studio,C#,Visual Studio,我想在Visual Studio中开发的C#程序中添加一个条件: #If onEditor do something 如果Application.isEditor Visual Studio上的“常规”(WinForms或ASP.NET)C应用程序中是否存在某些内容?您可以使用: #if DEBUG DEBUG常量是为所有默认Visual Studio项目模板中的调试配置定义的。#如果是编译指令,那么无论发生什么,都将在编译时检查,而不是在运行时检查。有一个#if DEBUG,它实际

我想在Visual Studio中开发的C#程序中添加一个条件:

#If onEditor 
   do something
如果Application.isEditor

Visual Studio上的“常规”(WinForms或ASP.NET)C应用程序中是否存在某些内容?

您可以使用:

#if DEBUG
DEBUG
常量是为所有默认Visual Studio项目模板中的调试配置定义的。

#如果
是编译指令,那么无论发生什么,都将在编译时检查,而不是在运行时检查。有一个
#if DEBUG
,它实际上意味着“这是在调试模式下构建的”,而不是“发布模式”。如果您的程序运行,它不会告诉任何关于运行的起源的信息


我认为您需要的是:它检查是否附加了调试器。如果该值为
true
,则该程序要么从Visual Studio运行,要么随后附加了调试器。

在Visual Studio中使用该值来测试您是否在调试模式下运行:

if (Debugger.IsAttached)
{
   Debugger.Break();
}

使用
#if DEBUG
在调试模式或发布模式下有条件地编译代码。

另请参阅:或
调试器。根据反调试的需要,您可以PInvoke
检查RemoteDebuggerPresent