В данный момент я создаю систему управления запасами, используя Entity Framework 4.
Немного предыстории, мои сущности выглядят примерно так (только показывает необходимую информацию)
Product -> ProductLocations
WarehouseLocation -> имеет много ProductLocations
Каждый ProductLocation
имеет количество
Я пытаюсь сделать так, чтобы приВы вызываете что-то вроде Product.TakeFromLocation (например, WarehouseLocation, qty как Integer), оно удаляет ProductLocation, если его количество падает до нуля.
Однако ... Product - это объект, как и ProductLocation, и онизначит быть невежественным.Я использую шаблоны POCO EF с парой модификаций, так что он создает интерфейс IEntities
и генерирует FakeEntities, используя версии в памяти для тестирования.Это означает, что мои сущности ничего не знают о Entity Framework, не наследуют и не реализуют какие-либо интерфейсы, поэтому C ontext.DeleteObject()
выходит за пределы.
Кто-нибудь сталкивался с подобным сценарием и получил какие-либо идеи окак обойти это?
Я вроде думал, что если SaveChanges () в контексте является частичным методом, я мог бы расширить его, чтобы проверить на 0-величины - но тогда он собирается сделать это для всех сохранений, что немного затягивает 90% + операций, которые этого не делают.