Here is a complete implementation example (insecure) of WeakReference implementation
ClassA objA = new ClassA(); WeakReference wr = new WeakReference(objA); // do stuff GC.Collect(); ClassA objA2; if (wr.IsAlive) objA2 = wr.Target as ClassA; else objA2 = new ClassA(); // create it directly if required
WeakReference is located in the System namespace, so there is no need to include any special assembly in it.
source share