Phun.Data.ContentModel.SetDataFromStream C# (CSharp) Method

SetDataFromStream() public method

Sets the data from stream.
public SetDataFromStream ( ) : ContentModel
return ContentModel
        public ContentModel SetDataFromStream()
        {
            if (this.DataStream != null)
            {
                var dataStream = this.DataStream;
                this.Data = dataStream.ReadAll();
                this.DataStream = null;
                dataStream.Dispose();
            }

            return this;
        }

Usage Example

        /// <summary>
        /// Phuns the partial.
        /// </summary>
        /// <param name="contentName">Name of the content.</param>
        /// <param name="url">The URL.</param>
        /// <returns>
        /// Partial content.
        /// </returns>
        /// <exception cref="System.ArgumentException">contentName is required.</exception>
        protected internal virtual string PhunPartial(string contentName, Uri url)
        {
            if (string.IsNullOrEmpty(contentName))
            {
                throw new ArgumentException("contentName is required.");
            }

            var result = string.Empty;
            var config = this.ContentConfig ?? Bootstrapper.Default.ContentConfig;
            var content = new ContentModel()
            {
                Path = this.Normalize(
                          "/page" + (contentName.Contains("/") ? contentName : url.AbsolutePath + "/" + contentName)),
                Host = this.GetTenantHost(url)
            };

            config.ContentRepository.Retrieve(content, true);
            if (content.DataLength != null)
            {
                content.SetDataFromStream();
                result = System.Text.Encoding.UTF8.GetString(content.Data).GetHtmlBody();
            }

            return result;
        }