如何在.cshtml文件中的调试和发布模式下声明变量

时间:2019-05-17 09:21:05

标签: c# asp.net-core

我希望在 .cshmtl 文件

中的调试和发布模式下使用具有两个不同路径的变量

我尝试使用 #debug HttpContext.Current.IsDebuggingEnabled ,但是它不起作用。

调试在cshtl中不起作用

我还尝试实现 @if(Html.IsReleaseBuild())

 @{
    ViewData["Title"] = "Admin Login Page";

      #if DEBUG
           public const bool IS_DEBUG = true;
       #else
           public const bool IS_DEBUG = false;
      #endif

        }


     @if (HttpContext.Current.IsDebuggingEnabled)
        {
    // Debug mode enabled. Your code here. Texts enclosed with <text> tag
       }

    <app>Loading...</app>

    <script src="~/dist/vendor.min.js" asp-append-version="true"></script>
     @section scripts {
        <script src="~/dist/main-client.min.js" asp-append-version="true"> 
          </script>
                   }

1 个答案:

答案 0 :(得分:1)

您不应在“查看”文件中声明一个 public const bool 字段。

如果要检查它是否处于Debug / Release模式,则可以如下简单地更改代码:

 @{
    ViewData["Title"] = "Admin Login Page";
    #if DEBUG
        const bool IS_DEBUG = true;
    #else
        const bool IS_DEBUG = false;
    #endif
 }


@if(IS_DEBUG)
{
    <h2>Debug Mode</h2>
}else
{
    <h2>Release Mode</h2>
}

测试用例

# run in Release mode
dotnet run -c Release

# Or in Debug mode
dotnet run -c Debug