Допустим, у меня есть класс с полем объекта. Когда вызывается Dispose (), я хотел бы очистить ссылку на этот объект. Частное поле может быть установлено только один раз, поэтому в идеале я хотел бы, чтобы оно было доступно только для чтения, но если оно доступно только для чтения, возникает ошибка времени компиляции, когда я пытаюсь освободить ссылку на объект во время Dispose (). В идеале я хотел бы иметь безопасное удаление И пометить поле _value как доступное только для чтения. Возможно ли это или даже необходимо?
public class Foo : IDisposable
{
public Foo(object value)
{
_value = value;
}
public object Value { get { return _value; } }
private readonly object _value;
public void Dispose()
{
//Cleanup here
_value = null // causes compile time error
}
}