Finding venue name using market ID

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Mr Dean
    Junior Member
    • Sep 2015
    • 2

    #1

    Finding venue name using market ID

    Evening all

    Apologies for my ignorance, but I'm having a bit of newbie trouble - I'm filtering only on horse racing

    I have the following code:

    Code:
    var marketFilter = new MarketFilter();
    
                    var eventTypes = client.listEventTypes(marketFilter);
                  
                    ISet<string> eventypeIds = new HashSet<string>();
                    foreach (EventTypeResult eventType in eventTypes)
                    {
                        if (eventType.EventType.Name.Equals("Horse Racing"))
                        {
                            eventypeIds.Add(eventType.EventType.Id);
                        }
                    }
                    var time = new TimeRange();
                    time.From = DateTime.Now;
                    time.To = DateTime.Now.AddDays(1);
    
                    marketFilter = new MarketFilter();
                    marketFilter.EventTypeIds = eventypeIds;
                    marketFilter.MarketStartTime = time;
                    marketFilter.MarketCountries = new HashSet<string>() { "GB" };
                    marketFilter.MarketTypeCodes = new HashSet<String>() { "WIN" };
    
                    var marketSort = MarketSort.FIRST_TO_START;
                    var maxResults = "1";
    
                    //as an example we requested runner metadata 
                    ISet<MarketProjection> marketProjections = new HashSet<MarketProjection>();
                    marketProjections.Add(MarketProjection.RUNNER_METADATA);
    
    
                    Console.WriteLine("\nGetting the next available horse racing market");
    
                    var marketCatalogues = client.listMarketCatalogue(marketFilter, marketProjections, marketSort, maxResults);
                    String marketId = marketCatalogues[0].MarketId;
                    var marketInfo = marketCatalogues.FirstOrDefault(x => x.MarketId == marketId);
                    return test = marketInfo.Event.Venue + " - " + marketInfo.MarketName ;
    However, Event.Venue is always null.

    How would I go about getting the venue name using the market ID? If someone can explain to me the error of my ways, I'd be most grateful.

    Mr Dean
  • betdynamics
    Junior Member
    • Sep 2010
    • 534

    #2
    Event information is only returned if you request it.

    To request it, add another line:

    Code:
    marketProjections.Add(MarketProjection.EVENT);

    Comment

    • Mr Dean
      Junior Member
      • Sep 2015
      • 2

      #3
      Originally posted by betdynamics View Post
      Event information is only returned if you request it.

      To request it, add another line:

      Code:
      marketProjections.Add(MarketProjection.EVENT);
      Riiiiiiiiiiiiiiiiight! And with that small comment, you've just provided me with the missing link. Everything is starting to make a bit more sense now.

      Thank you very much, most appreciated.

      Comment

      • danielusa0106
        Junior Member
        • Aug 2022
        • 1

        #4
        I think you are getting an error in the line of code: Console.WriteLine("\nGetting the next available horse racing market");
        Make it right so that users can easily find the address they need based on the market ID alone. wordle io games

        Comment

        Working...
        X