Subsonic 3 - SimpleRepository

Bawię się prostym repozytorium Subsonic 3 i uderzam w ściany, aby zrozumieć, jak radzić sobie z obcymi kluczami ...

Jeśli mam obiekt produktu zawierający

int ID; 

string name; 

string description; 

Category category; 

int categoryID (this one is just to persist the product's categoryID to the DB)

and a category object containing 

int ID; 

string name;

Jak mogę użyć repozytorium, aby przywrócić listę wszystkich produktów z instancją kategorii?

W tej chwili napisałem zapytanie linq, które łączy się z product.categoryID = category.ID, które jest dobrze i dobrze, ale kiedy I .ToList () wyniki tego zapytania, kategoria produktu nie jest tworzona.

Czy istnieje sposób, aby to zrobić, czy muszę ręcznie utworzyć instancję kategorii dla każdego produktu?

Dzięki,

Paweł