当前位置: 首页>>代码示例>>C#>>正文


C# HtmlNode.HasAttribute方法代码示例

本文整理汇总了C#中HtmlAgilityPack.HtmlNode.HasAttribute方法的典型用法代码示例。如果您正苦于以下问题:C# HtmlNode.HasAttribute方法的具体用法?C# HtmlNode.HasAttribute怎么用?C# HtmlNode.HasAttribute使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在HtmlAgilityPack.HtmlNode的用法示例。


在下文中一共展示了HtmlNode.HasAttribute方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: Parse


//.........这里部分代码省略.........
                    // Step 10: Incomplete triples and bnode creation
                    if (rels.IsNotNull() && rels.Count > 0)
                    {
                        if (inlist.IsNotNull())
                        {
                            foreach (var prop in rels)
                            {
                                if (!listMapping.ContainsKey(prop))
                                {
                                    listMapping.Add(prop, new List<string>());
                                }
                            }
                        }
                        else
                        {
                            incompleteRels = rels;
                        }
                    }
                    if (revs.IsNotNull() && revs.Count > 0)
                    {
                        incompleteRevs = revs;
                    }
                }

                // Step 11: establish current property value
                if (subject.IsNotNull() && property.IsNotNull())
                {
                    bool dateTime = false;
                    var dto = new RDFConstructDto();

                    if (dataType.IsNotNull())
                        dataType = _processor.ResolveCURIE(dataType, context.Base, prefixMappings);

                    if (elementNode.Name == "data" && elementNode.HasAttribute("value"))
                    {
                        dto.Object = elementNode.GetAttributeValue("value", null);
                    }
                    else if (elementNode.HasAttribute("datetime"))
                    {
                        dto.Object = elementNode.GetAttributeValue("datetime", null);
                        dateTime = true;
                    }
                    else if (dataType == "")
                    {
                        dto.Object = elementNode.InnerText;
                        dto.DataType = Constants.LiteralDataType;
                    }

                    else if (content.IsNotNull())
                    {
                        dto.Object = content;
                    }
                    else if (dataType.IsNull() && rels.IsEmpty() && revs.IsEmpty())
                    {
                        dto.Object = (new List<string> { resource, href, src }).FirstNonEmptyOrDefault();
                        dto.DataType = Constants.UriDataType;
                    }

                    if (dto.Object.IsNull() && typedResource.IsNotNull() && about.IsNull())
                    {
                        dto.DataType = Constants.UriDataType;
                        dto.Object = typedResource;
                    }

                    if (dto.Object.IsNull())
                    {
开发者ID:prnawa,项目名称:sharpRDFa,代码行数:67,代码来源:RDFaParser.cs

示例2: UpdateDefaultVocabulary

        public string UpdateDefaultVocabulary(ParserContext context, HtmlNode elementNode)
        {
            if (elementNode.HasAttribute("vocab"))
            {
                string vocab = elementNode.GetAttributeValue("vocab", string.Empty);
                if (!string.IsNullOrEmpty(vocab))
                {
                    ConstructTriple(new RDFConstructDto
                                        {
                                            Subject = context.Base,
                                            Predicate = "rdfa:usesVocabulary",
                                            Object = vocab,
                                            DataType = Constants.UriDataType,
                                        });
                    context.DefaultVocabulary = vocab;
                    return vocab;
                }
            }

            return context.DefaultVocabulary;
        }
开发者ID:prnawa,项目名称:sharpRDFa,代码行数:21,代码来源:RDFaParser.cs

示例3: UpdatePrefixMappings

        public IDictionary<string, string> UpdatePrefixMappings(ParserContext context, HtmlNode elementNode)
        {
            if (elementNode.HasAttribute(Constants.Prefix_RDFaAttribute))
            {
                var mappings = new Dictionary<string, string>(context.PrefixMappings);

                string[] splits = Regex.Split(elementNode.GetAttribute(Constants.Prefix_RDFaAttribute).Value, "\\s+");
                int i = 0;
                while (i < splits.Length)
                {
                    var prefix = splits[i].Split(':')[0];
                    var url = splits[i + 1];

                    if (prefix == "_")
                    {
                        continue;
                    }
                    if (!string.IsNullOrEmpty(prefix) && !mappings.ContainsKey(prefix))
                    {
                        mappings.Add(prefix, url);
                    }

                    i += 2;
                }

                if (mappings.Count > context.PrefixMappings.Count)
                    context.PrefixMappings = mappings;

            }
            return context.PrefixMappings;
        }
开发者ID:prnawa,项目名称:sharpRDFa,代码行数:31,代码来源:RDFaParser.cs


注:本文中的HtmlAgilityPack.HtmlNode.HasAttribute方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。