Я реорганизую класс модели в интерфейс. Класс модели автоматически создается с помощью Linq-to-Sql.
class FooRepository
{
// ...
public void Add(IFoo foo)
{
db.Foos.InsertOnSubmit(foo);
}
}
Метод InsertOnSubmit принимает экземпляр Foo, а не IFoo. Я могу встроить экземпляр в (Foo), и это работает, но есть ли более чистый способ сделать это?
Я уже использую StructureMap, могу ли я добавить атрибут к методу Add для разрешения типа на основе моих сопоставлений?
Или я могу переопределить любой из методов классов модели или использовать для этого частичные события?