In C# code, I have three objects A, B and C. A and B each hold a reference to C. When A is destroyed I would like the reference from B to C to be deleted as well so that C can be destroyed by the Garbage Collector.
Is there a way to do this without deleting it manually from B? (The destructor in C is not called before the reference from B to C is deleted, so it is not effective here.)