Uploaded image for project: 'C# Driver'
  1. C# Driver
  2. CSHARP-1589

OfType doesn't work for an embedded array.

    XMLWordPrintableJSON

Details

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Minor - P4 Minor - P4
    • 2.2.4
    • 2.2.3
    • API
    • c# / net 4.5, mongo 3.2.3

    Description

      please find method which calls to get people entries with casting to derived class object

      var people = database.GetDatabase("Test") .GetCollection<Person>("People").AsQueryable();
      var x = people.Where(z => z.Addresses.OfType<Email>().Any(e => e.MailTo == "not@home.com"));
      throws an exception:
      "The method OfType is not supported in the expression tree:

      {document} {Addresses}

      .OfType()."

      class Person
      {
      public List<Address> Addresses

      { get; set; }
      }
      class Address
      {
      }
      class Phone : Address
      {
      public string Number { get; set; }

      }
      class Email : Address
      {
      public string MailTo

      { get; set; }

      }

      Attachments

        Activity

          People

            craig.wilson@mongodb.com Craig Wilson
            profesor79 Greg
            Votes:
            2 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: