SORU
4 EYLÜL 2009, Cuma


ASP MVC: İController İmha() denir?

Büyük MVC uygulamalarım birinin verdiği hız / büyük bir yeniden düzenleme ile gidiyorum. Birkaç ay için Üretim şu anda konuşlanmış ve zaman aşımı, bağlantı havuzundaki bağlantılar bekliyor etmeye başlamıştım. Aşağı sorun bağlantıları için uygun bir şekilde imha edilmesi almıyorum kadar izledim.

Bu bilgiler ışığında bu yana temel benim denetleyicisi için bu değişikliği yaptım

public class MyBaseController : Controller
{
    private ConfigurationManager configManager;  // Manages the data context.

    public MyBaseController()
    {
         configManager = new ConfigurationManager();
    }

    protected override void Dispose(bool disposing)
    {
        if (disposing)
        {
            if (this.configManager != null)
            {
                this.configManager.Dispose();
                this.configManager = null;
            }
        }

        base.Dispose(disposing);
    }
}

Şimdi iki sorum var:

  1. Bir yarış durumu tanıtımı mıyım?IQueryable<> sergiler DataContext parametreler configManager yönettiği sürece manzaralı, Dispose() denilen olmayacak emin olmak istiyorum görünüm önce denetleyicisinde bitirir işleme.
  2. MVC çerçeve veya sonra Görünüm oluşturulmadan önce Kumanda üzerinde Dispose() diye hitap ediyor? Ya da, yaptığı MVC çerçeve bırak bu çöp toplamayı?

CEVAP
4 EYLÜL 2009, Cuma


Atın görünümü işlendikten sonra denirher zaman.

Görünüm 7* *çağrı oluşturulur. O (dolaylı olarak) teslim ControllerBase.ExecuteCore denir ControllerActionInvoker.InvokeAction tarafından.

Kontrol ünitesi, çağrı görünümü işlendiğinde yığının içinde olduğundan, o zaman bertaraf edilemez.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Associated Press

    Associated P

    18 EYLÜL 2006
  • Darren Kitchen

    Darren Kitch

    3 EKİM 2011
  • UCBerkeley

    UCBerkeley

    3 Mayıs 2006