是否可以使用servicestack在剃刀视图中设置断点?

我正在试用服务堆栈中的新剃刀视图,我有这样的观点:

@inherits ServiceStack.Razor.ViewPage<ServiceStackRazorCrud.Api.UserPageResourceResponse>
@{
    var m = Model;  // <-- I have a breakpoint in this line.
    var req = Request; 
    var res = Response;
}

当我设置断点并运行应用程序(控制台应用程序)时,我可以看到该视图已编译,但当我在浏览器中请求视图时,调试器不会中断。 我认为这是因为视图是在应用程序启动时动态编译的或类似的东西。 以某种方式获得断点可行吗?


AFAIK不可能以这种方式调试视图(目前使用3.9.43,后来的版本我相信编译错误有更好的诊断)。

尝试并保持视图代码简单,仅限于简单的循环/渲染以及在DTO上使用扩展方法来处理任何允许调试的复杂逻辑/处理。 您也可以考虑使用日志记录或简单的Debug扩展方法:

using ServiceStack.Html;
public static class HtmlHelperExtensions
{
    public static bool IsDebug(this HtmlHelper htmlHelper)
    {
    #if DEBUG
        return true;
    #else
        return false;
    #endif
    }
}

@using ServiceStack.Text
@inherits ServiceStack.Razor.ViewPage<ServiceStackRazorCrud.Api.UserPageResourceResponse>
@{
    var m = Model;  
}

@if (this.Html.IsDebug())
{
    <div class="debug">@(this.Model == null ? "m == null" : Model.Dump())</div>
}
链接地址: http://www.djcxy.com/p/11227.html

上一篇: Is it possible to set breakpoints in razor views with servicestack?

下一篇: How to get cursor position or location from RichTextArea in GWT?