Я реализовал Unity DI в моем проекте, но у меня, как мне кажется, простой вопрос.
Мой DataContext:
public partial class AuctionDataContext : DataContext {
public Table<AuctionItem> AuctionItems;
...
}
Некоторый код для вставки AuctionItem в базу данных. Обратите внимание, как я приведу интерфейс к фактическому типу. Это для того, чтобы все правильно работало с DataContext.
public void Insert(IAuctionItem item) {
_dataStore.DataContext.AuctionItems.InsertOnSubmit((AuctionItem)item);
_dataStore.DataContext.SubmitChanges();
}
Ни AuctionItem, ни тип DataContext никогда не подвергаются клиентскому коду, а доступны только внутри уровня базы данных. Я думаю, мой вопрос, это хорошая архитектура?