Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/21.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
Session 在ServiceStack Razor视图中访问会话_Session_Razor_<img Src="//i.stack.imgur.com/WM7S8.png" Height="16" Width="18" Alt="" Class="sponsor Tag Img">servicestack - Fatal编程技术网 servicestack,Session,Razor,servicestack" /> servicestack,Session,Razor,servicestack" />

Session 在ServiceStack Razor视图中访问会话

Session 在ServiceStack Razor视图中访问会话,session,razor,servicestack,Session,Razor,servicestack,我正在尝试访问ServiceStack Razor视图中的会话(部分)。在这种情况下,我只是试图呈现会话中存在的菜单 @(new HtmlString(this.SessionAs<CustomUserSession>().MenuHtmlString)) @(新的HtmlString(this.SessionAs().MenuHtmlString)) 我得到这个错误: 响应状态 错误代码 NullReferenceException 消息 对象引用未设置为对象的实例。 堆栈跟踪

我正在尝试访问ServiceStack Razor视图中的会话(部分)。在这种情况下,我只是试图呈现会话中存在的菜单

@(new HtmlString(this.SessionAs<CustomUserSession>().MenuHtmlString))
@(新的HtmlString(this.SessionAs().MenuHtmlString))
我得到这个错误:

响应状态

错误代码 NullReferenceException 消息 对象引用未设置为对象的实例。 堆栈跟踪 [BOPBasicInfo1VM:1/31/2014 9:46:45 PM]:[REQUEST:{QuoteNumber:1,AgencyId:0,错误:[],IsValid:False}] System.NullReferenceException:对象引用未设置为实例 指一个物体。在ASP ServiceStack.Razor.ViewPage
1.WriteTo(StreamWriter writer)位于
ServiceStack.Razor.Managers.razorpagesolver.ExecuteRazorPageWithLayout(IRequest
httpReq,IResponse httpRes,对象模型,IRazorView页,函数
布局)在
ServiceStack.Razor.Managers.razorpagesolver.ResolveAndExecuteRazorPage(IRequest
httpReq,IResponse httpRes,对象模型,RazorPage RazorPage)位于
ServiceStack.Razor.Managers.razorpagesolver.ProcessRequest(IRequest
httpReq、IResponse httpRes、Object dto)位于
ServiceStack.Formats.HtmlFormat.c_DisplayClass2.b__0(IViewEngine
x) 在System.Linq.Enumerable.Any[TSource](IEnumerable
1源,Func
2 谓词)at ServiceStack.Formats.HtmlFormat.SerializeToStream(IRequest请求, 对象响应,i响应(httpRes)

我是否正在尝试正确访问会话?你知道为什么这会失败吗


据我所知,SS Razor视图中没有断点/调试支持,最新版本v4.0.8.0+是否改变了这一点?

问题在于

@(new HtmlString())
而不是

this.SessionAs<CustomUserSession>().MenuHtmlString
我还将在ServiceStack论坛上添加来自Demis(mythz)的评论

为了帮助调试,我将从Razor视图调用您自己的方法 因此,您可以放置断点并检查传入的值

您还应该能够使用 使用NuGet发布的源符号,一些说明:

    public static HtmlString GetMenu(ServiceStack.Razor.ViewPage page)
    {
        return new HtmlString(page.SessionAs<FMIC.DTOs.Entities.CustomUserSession>().MenuHtmlString);
    }
@(ViewPageExtensions.GetMenu(this))