コード例 #1
0
        /// <summary>Initializes a new instance of the NServiceKit.ServiceHost.MqRequestContext class.</summary>
        ///
        /// <param name="resolver">The resolver.</param>
        /// <param name="message"> The message.</param>
        public MqRequestContext(IResolver resolver, IMessage message)
        {
            this.Resolver    = resolver;
            this.Message     = message;
            this.ContentType = this.ResponseContentType = Common.Web.ContentType.Json;
            if (message.Body != null)
            {
                this.PathInfo = "/json/oneway/" + OperationName;
            }

            this.Request  = new MqRequest(this);
            this.Response = new MqResponse(this);
        }
コード例 #2
0
ファイル: RazorFormat.cs プロジェクト: Qasemt/NServiceKit
        /// <summary>Renders to HTML.</summary>
        ///
        /// <exception cref="ArgumentNullException">Thrown when one or more required arguments are null.</exception>
        ///
        /// <param name="razorPage">The razor page.</param>
        /// <param name="razorView">The razor view.</param>
        /// <param name="model">    The model.</param>
        /// <param name="layout">   The layout.</param>
        ///
        /// <returns>A string.</returns>
        public string RenderToHtml(RazorPage razorPage, out IRazorView razorView, object model = null, string layout = null)
        {
            if (razorPage == null)
                throw new ArgumentNullException("razorPage");

            var mqContext = new MqRequestContext();

            var httpReq = new MqRequest(mqContext);
            if (layout != null)
            {
                httpReq.Items[RazorPageResolver.LayoutKey] = layout;
            }

            var httpRes = new MqResponse(mqContext);

            razorView = PageResolver.ResolveAndExecuteRazorPage(
                httpReq: httpReq,
                httpRes: httpRes,
                model: model,
                razorPage: razorPage);

            var ms = (MemoryStream)httpRes.OutputStream;
            return ms.ToArray().FromUtf8Bytes();
        }