public static INodeList ToHtmlFragment(this String sourceCode, IElement context = null, IConfiguration configuration = null)
        {
            var ctx = BrowsingContext.New(configuration);
            var source = new TextSource(sourceCode);
            var document = new HtmlDocument(ctx, source);
            var parser = new HtmlDomBuilder(sourceCode, configuration);
            var element = context as Element;

            if (element != null)
            {
                var options = new HtmlParserOptions
                {
                    IsEmbedded = false,
                    IsScripting = configuration.IsScripting()
                };
                return parser.ParseFragment(options, element).DocumentElement.ChildNodes;
            }
            else
            {
                return parser.Parse(default(HtmlParserOptions)).ChildNodes;
            }
        }
 /// <summary>
 /// Parses the string and returns the result.
 /// </summary>
 public IHtmlDocument Parse(String source)
 {
     var document = CreateDocument(source);
     var parser = new HtmlDomBuilder(document);
     return parser.Parse(_options);
 }
Beispiel #3
0
        /// <summary>
        /// Parses the string and returns the result.
        /// </summary>
        public INodeList ParseFragment(String source, IElement context)
        {
            var document = CreateDocument(source);
            var parser = new HtmlDomBuilder(document);

            if (context != null)
            {
                var element = context as Element;

                if (element == null)
                {
                    var configuration = document.Options;
                    var factory = configuration.GetFactory<IElementFactory<HtmlElement>>();
                    element = factory.Create(document, context.LocalName, context.Prefix);
                }

                return parser.ParseFragment(_options, element).DocumentElement.ChildNodes;
            }

            return parser.Parse(_options).ChildNodes;
        }
Beispiel #4
0
        /// <summary>
        /// Parses the string and returns the result.
        /// </summary>
        public INodeList ParseFragment(String source, IElement context)
        {
            var document = CreateDocument(source);
            var parser = new HtmlDomBuilder(document);

            if (context == null)
                return parser.Parse(_options).ChildNodes;

            var element = context as Element ?? 
                Factory.HtmlElements.Create(document, context.LocalName, context.Prefix);
            return parser.ParseFragment(_options, element).DocumentElement.ChildNodes;
        }