Gerçekçi olarak, MVC çoğunlukla bir UI uygulama modelidir, bu yüzden soru biraz tartışmalıdır. Ancak, gerçekten sadece iki büyük resim seçeneği var. Kontrol cihazınız tipik olarak 1) bir tür servis katmanı veya 2) Aktif Kayıt kalıbı kullanarak modelinizde varlıkları yükleme veya kaydetme isteklerini gönderir.
Hizmet katmanı, herhangi bir şekilde olabilir, ancak benim kişisel tercihim, somut uygulamaları bir tür ORM veya hafif bir DAO ile çalışacak olan toplu kök varlıklar için depo soyutlamasıyla çalışmaktır. Uygulama için anlamlı olan bazı ilişkisel olmayan mağazalar için API.
Aktif Kayıt kalıbı, modelinizin kalıcılıktan sorumlu olduğu anlamına gelir, ancak genellikle bir çeşit temel sınıf anlamına gelir, mağazanızdaki eşlemeleri yönetir, bu nedenle modeliniz tam olarak o kadar doğrudan ilişkili değildir.
Temel olarak, denetleyici, depolarınıza, UnitOfWork uygulamanıza veya varlıklarınızdaki Kaydet yöntemine yapılan bir çağrı olup olmadığına, nesnelere yönelik istekleri gönderir. Havuz kullanıyorsanız, model nesneleriniz ısrarcı-cahildir.