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


C# DOM.Query方法代码示例

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


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

示例1: GetUpcomingMatches

    public List<Match> GetUpcomingMatches(int seriesID)
    {
        List<Match> Upcoming = (List<Match>)Utilities.GetFromCache(seriesID + ":Upcoming");

            if (Upcoming == null)
            {
                Upcoming = new List<Match>();

                DOM Document = new DOM(GetWidgetUrl("cominginleague", seriesID));

                var TableRows = Document.Query("tr");
                char[] querystringSplitChar = { '=' };

                int RowCount = 0;
                foreach (XmlNode Row in TableRows)
                {
                    try
                    {
                        if (RowCount > 2)
                        {
                            var Columns = Row.SelectNodes("td");

                            Match match = new Match();
                            match.Time = DateTime.Parse(Columns.ValueOfIndex(0));
                            match.MatchName = Columns.ValueOfIndex(1);
                            string MatchURI = Columns[1].SelectSingleNode("a").GetAttributeValue("href");
                            match.ID = MatchURI.Split(querystringSplitChar).LastOrDefault().ToString();

                            PopulateMatchDetails(match);
                            Upcoming.Add(match);

                        }
                        RowCount = RowCount + 1;
                    }
                    catch (Exception ex)
                    {

                    }
                }

                Utilities.InsertToCache(seriesID + ":Upcoming", Upcoming);

            }

            return Upcoming;
    }
开发者ID:robcar,项目名称:getingarna,代码行数:46,代码来源:SoccerAPI.cs

示例2: GetScoreTable

    public List<TeamResults> GetScoreTable(int seriesID)
    {
        List<TeamResults> ScoreTable = (List<TeamResults>)Utilities.GetFromCache(seriesID + ":Scores");

            if (ScoreTable == null)
            {

                ScoreTable = new List<TeamResults>();

                DOM Document = new DOM(GetWidgetUrl("table", seriesID));

                var TableRows = Document.Query("table//tr");

                int RowCount = 0;
                foreach (XmlNode Row in TableRows)
                {
                    if (RowCount > 2)
                    {
                        var Columns = Row.SelectNodes("td");

                        TeamResults score = new TeamResults();

                        score.TeamName = Columns.ValueOfIndex(0);

                        score.MatchesPlayed = Columns.ValueOfIndex(1);
                        score.MatchesWon = Columns.ValueOfIndex(2);
                        score.MatchesDraw = Columns.ValueOfIndex(3);
                        score.MatchesLost = Columns.ValueOfIndex(4);
                        score.GoalsMadeAndReceived = Columns.ValueOfIndex(5);
                        score.Difference = Columns.ValueOfIndex(6);
                        score.Points = Columns.ValueOfIndex(7);

                        ScoreTable.Add(score);
                    }
                    RowCount = RowCount + 1;
                }
                    Utilities.InsertToCache(seriesID + ":Scores", ScoreTable);
                }

            return ScoreTable;
    }
开发者ID:robcar,项目名称:getingarna,代码行数:41,代码来源:SoccerAPI.cs

示例3: GetSeries

    public List<Series> GetSeries()
    {
        List<Series> AllSeries = (List<Series>)Utilities.GetFromCache("AllSeries");

            if (AllSeries == null) {
                AllSeries = new List<Series>();
                DOM Document = new DOM("http://www.svenskfotboll.se");
                var Series = Document.Query("select[@id='ftid-stickybar']//option");
                foreach(XmlNode node in Series){
                    Series serie = new Series();
                    serie.ID = int.Parse(node.GetAttributeValue("value"));
                    serie.Name = node.InnerText;
                    AllSeries.Add(serie);
                }

               Utilities.InsertToCache("AllSeries", AllSeries);

            }

            return AllSeries;
    }
开发者ID:robcar,项目名称:getingarna,代码行数:21,代码来源:SoccerAPI.cs

示例4: PopulateMatchDetails

    private void PopulateMatchDetails(Match match)
    {
        DOM Document = new DOM("http://svenskfotboll.se/ovriga-serier/information/?widget=1&scr=result&fmid=" + match.ID);

            var DetailRows = Document.Query("table[@id='iMatchInfo']//tr");
            match.Venue = DetailRows.GetCellValueByFirstColumn("Spelplats");
            match.Referee = DetailRows.GetCellValueByFirstColumn("Domare");
            match.AssistingReferee1 = DetailRows.GetCellValueByFirstColumn("Ass. domare 1");
            match.AssistingReferee2 = DetailRows.GetCellValueByFirstColumn("Ass. domare 2");

            if (match.Venue != "")
            {
                var VenueLocation = GeoCoder.GeoCodeAddress(match.Venue);
                if (VenueLocation != null)
                {
                    match.VenueLongitude = VenueLocation.Longitude;
                    match.VenueLatitude = VenueLocation.Latitude;
                }
            }

            var Logotypes = Document.Query("table[@class='clTblMatch']//img");

            if (Logotypes.Count > 1)
            {
                match.Team1Logo = "http://svenskfotboll.se" + Logotypes[0].GetAttributeValue("src");
                match.Team2Logo = "http://svenskfotboll.se" + Logotypes[1].GetAttributeValue("src");

                match.Team1Logo = match.Team1Logo.Replace("/width_125", "");
                match.Team2Logo = match.Team1Logo.Replace("/width_125", "");
            }

            var PlayerTables = Document.GetTableByHeader("Laguppställning");
            var SecondaryPlayerTables = Document.GetTableByHeader("Ersättare");

            if (PlayerTables.Count > 1)
            {
                match.Team1Players = GetPlayers(PlayerTables[0]);
                match.Team2Players = GetPlayers(PlayerTables[1]);
            }

            if (SecondaryPlayerTables.Count > 1)
            {
                match.Team1SecondaryPlayers = GetPlayers(SecondaryPlayerTables[0]);
                match.Team2SecondaryPlayers = GetPlayers(SecondaryPlayerTables[1]);
            }

            // To not flood their server
            System.Threading.Thread.Sleep(200);
    }
开发者ID:robcar,项目名称:getingarna,代码行数:49,代码来源:SoccerAPI.cs


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