2012-04-03 2 views
1

Рассмотрим этот примерИнициализация Уплотненный сильно типизированных объектов в LINQ к Entities

public class FooWrapper 
{ 
    public FooWrapper() { } 

    public Foo FooObject { get; set; } 
    public Bar BarObject { get; set; } 
} 


public IEnumerable<FooWrapper> ListFoosWithBars(int userID) 
{ 
    IEnumerable<Bar> tempBar = ListBarsByUserID(userID); 

    IEnumerable<FooWrapper> results = (
     from f in _entities.FooSet 
     join b in tempBar on f.ID equals b.foos.ID 
     select new FooWrapper 
     { 
      FooObject = f, 
      BarObject = b 
     }); 

    return results; 
} 

что, если мой Foo класс тип имеет свойства, как

public class Foo(){ 
FProperty1{get; set;} 
FPorperty2{get; set;} 
} 

public class Bar(){ 
BProperty1{get; set;} 
BProperty2{get; set;} 
} 

и теперь я хочу, чтобы инициализировать мой объект в запросе, как это

select new FooWrapper 
     { 
      FooObject.FProperty1 = f, 
      BarObject.BProperty2 = b 
     }); 

Могу ли я это сделать? Как это будет работать?

ответ

1

Что вы хотите:

select new FooWrapper 
    { 
     FooObject = new Foo { FProperty1 = f }, 
     BarObject = new Bar { BProperty2 = b } 
    }); 
+0

Спасибо так много я был искал это от долгого времени. – HaBo

Смежные вопросы