Я делаю несколько тестов, чтобы получить представление объектно-реляционного сопоставления с использованием LINQ to SQL, и я застрял, пытаясь сделать работу «многие ко многим». Чтобы это было просто, предположим, что у меня есть Заказать класс, которому принадлежит коллекция заказанных Продукты. Как я могу сопоставить эту коллекцию продуктов с помощью LINQ to SQL?Как сопоставить коллекцию объектов с использованием LINQ to SQL?
[Table(Name = "OrderTable")]
public class Order
{
[Column(IsPrimaryKey = true, IsDbGenerated = true)]
public int ID;
[Column]
public string Customer;
[Association(ThisKey = "ID", OtherKey = "ID")] // Not working
public EntitySet<Product> products = new EntitySet<Product>();
}
[Table(Name = "ProductTable")]
public class Product
{
[Column(IsPrimaryKey = true, IsDbGenerated = true)]
public int ID;
[Column]
public string Name;
[Column]
public double Price;
}
Я попытался с помощью EntitySet в качестве контейнера провести заказ «s Продуктов, но он не работает, потому что LINQ запросы возвращаются Заказать объектов с израсходованными коллекциями.
PS: Из This question кажется, что мне нужно, чтобы создать третий класс, чтобы следить за заказа продукции отношений, но я надеялся найти способ сделать это без того, чтобы создать еще один класс.