Подтвердить что ты не робот

Невозможно инициализировать тип '' инициализатором коллекции, потому что он не реализует 'System.Collections.IEnumerable'

Я создал класс, который содержит три класса в качестве свойств:

   public class Feeds
   {
         public Rentals Rentals { get; set; }
         public Agent Agents { get; set; }
         public NorthwindService.ServiceReference1.File File { get; set; }
    }

и я использую его следующим образом:

   var query = from r in ent.Rentals
               join a in ent.Agents on r.ListingAgentID equals a.AgentID
               select new Feeds
               {
                        a.AgentID,
                        a.Alias,
                        a.Bio,
                        a.Email,
                        a.Fax,
                        r.Firstname,
                        r.IsStaff,
                        r.Languages
               }

но я получаю ошибку:

Невозможно инициализировать тип "NorthwindService.WebForm1.Feeds" с инициализатором коллекции, поскольку он не реализует "System.Collections.IEnumerable" C:\Users\NorthwindService\NorthwindService\WebForm1.aspx.cs

Пожалуйста, предложите решение

4b9b3361

Ответ 1

Должно быть:

var query = from r in ent.Rentals
           join a in ent.Agents on r.ListingAgentID equals a.AgentID
           select new Feeds
           {
                    Agents = a,
                    Rentals = r
           }

Ответ 2

Вы используете здесь инициализатор коллекции в С#:

new myClass{a,b,c} 

где myClass - это коллекция, а a, b, c будут вставлены в эту коллекцию.

Но необходимо использовать обозначение инициализатора объекта:

new myClass{
   myProperty1 = a,
   myProperty2 = b,
   myProperty3 = c
}

где член myClass будет инициализирован. Или, может быть, вам нужно использовать классический конструктор, а затем изменить скобку с круглыми скобками:

new myClass(a,b,c)