我在我的項目中使用MVVM。 首先在所有看到編輯動作:如何在完成時剝奪類的實例操作
[HttpGet]
public async virtual Task<ActionResult> Edit(int code)
{
var attributeModel = await _attributeService.GetAsync(code);
EditAttributeViewModel attributeViewModel = mapper.Map(attributeModel, new EditAttributeViewModel());
return View(attributeViewModel);
}
在視圖模型
我算實例是這樣的:
public class EditAttributeViewModel
{
private static int counter = 0;
public EditAttributeViewModel()
{
Interlocked.Increment(ref counter);
}
~EditAttributeViewModel()
{
Interlocked.Decrement(ref counter);
}
}
再次獲得Edit
行動和變化控制器,復出時說Edit
動作,當看到counter
它總是當我在頁面之間移動時。我不想使用太多的內存,因爲我這樣做我Override
Dispose
控制器中的方法是這樣的:
protected override void Dispose(bool disposing)
{
base.Dispose(disposing);
}
但它dost chnage和計數器總是增加。
我怎樣才能清除實例Finshed ActionMethod
'counter'是'static'。它只有一個實例。 –
whan我編輯一行5次,計數器= 5,而變化控制器和againg復出再次編輯該行,計數器增加到6 ... –
是的,我知道 - 因爲它的'靜態'! –