2016-04-14 30 views
3

Model binder in View bileşenini çağırmanın bir yolunu arıyorum. Asp.net çekirdekten yapı işlevini kullanmayı tercih ediyorum, ancak bu yalnızca Bileşenleri Görüntüle değil, denetleyicilerin içinde kullanılabilir. Bu sorunu çözmenin herhangi bir yolu var mı?Asp.net core Bileşenleri göster bağlama modeli

+1

Önerdiğiniz şey garip. MVC şablonunda, tüm veri bağlacı denetleyici katmanında yapılmalıdır, böylece Görünüm katmanına eriştiğinizde, iş sınıfları değil veri yapılarıyla uğraşmanız gerekir. İhtiyaçlarınızı daha ayrıntılı bir şekilde açıklayın, böylece neye ihtiyacınız olduğunu ve ona nasıl ulaşabileceğinizi anlayabiliriz. – Bardo

+1

Yeniden kullanılabilir widget'lar/UI öğeleri oluşturmak için görünüm bileşenlerini kullanın (Örn: Menü çubuğunuz vb.) Modelin gerçek bir eylem yöntemine bağlanmasını bekleyin. Gerçek bir işlem yöntemine gönderilecek olan görünüm bileşeni görünümünün kodunun içinde bir formunuz olabilir. – Shyju

+0

MVC tarafından nasıl yapılması gerektiği konusunda tam olarak emin değilim, ancak bu durumda bu konuyla ilgilenmemiz gerekiyor. Bir Giriş Noktasına (Denetleyicideki Eylem) ve hangi View Bileşenlerinin çağrılacağına karar verebileceğimiz parametrelere dayanarak varız. (DB tabanından alınan izin, geçirilen parametreler vb. Bilgiler) –

cevap

3

Farkında olduğum kadarıyla, bu mümkün değil. Model bağlama, denetleyici eylemi başlatılmadan önce çerçevenin yaşam döngüsünde daha da ortaya çıkar.

Model bağlama içermeyen başka olası çözümler olup olmadığını görmek için bunu neden yapmanız gerektiğine ilişkin bazı kodları görmek gerçekten çok isterim. View Components belgelerine göre

3

:

Görünüm Bileşenleri bağlama modeli kullanmak ve sadece onun içine çağrılırken sağladığınız verilere bağlı olmayan.


Ancak, ViewComponent içine bir nesne/parametre olarak modelini geçebileceği:

@await Component.InvokeAsync("PriorityList", MyModel) 

veya

@await Component.InvokeAsync("PriorityList", new { maxPriority = 2, isDone = false }) 


Ne elde etmek istiyorsunuz?

İlgili konular