本文整理汇总了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;
}
示例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;
}
示例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;
}
示例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);
}