Denetleyicilerin birinde, her görünümde sabit bir önişleme vardır. Aşağıdaki kod yerine, bunu yapmanın daha iyi bir yolu var mı? dönüş Görünüm() dönüş Görünüm() Bu kontrol cihazında ile tüm fonksiyonlar için önce satır yazmadan şekilde SomeFunctionAsync çalışır? Ayrıca bazı ajax sonrası işlevleri var. Ben mümkün istiyorum sonunda başka deyişle Görünüm denetleyicide ortak kod nereye koyulur?
public async Task<ActionResult> View1()
{
await SomeFunctionAsync();
return View();
}
public async Task<ActionResult> View2()
{
await SomeFunctionAsync();
return View();
}
, Sen denetleyicisi için bir temel sınıf oluşturabilir
public async Task<ActionResult> View1()
{
return View();
}
public async Task<ActionResult> View2()
{
return View();
}
Denetleyicilerin görünümleri değil eylemleri vardır. Ayrıca ne soruyorsun? "Ortak kod" tipik olarak bir yönteme çıkartmak ve bu yöntemi çağırmak anlamına gelir. Bu kodu nerede saklayacağınızı mı yoksa çağrıdan nasıl kurtulacağınızı mı soruyorsunuz? Örneğin, filtreler oluşturabilir ancak bunlar karmaşıklık ekler –
Aramaktan kurtulmak istiyorum. Şu anda bu işlev denetleyicimde özel bir işlevdir. Ve bir görüşe geri dönen her fonksiyon bunu çağırmalıdır. –
Sonuç için bir görünüm adını geçirebileceğinizi bilmiyor musunuz? Farklı görünümler kullanılarak tek bir eylem oluşturulabilir. "View1", "View2" yöntemlerinizi çağırmak yerine, aslında bir eylem olan, örneğin "Oluştur" ve geri dönme Görünüm ("Görünüm 1") veya "Görünüm (" Görünüm 2 ")) döndüren tek bir eylemin olması gerekir. –