public class Form
{
internal static Dictionary<string, Form> Cache = new
Dictionary<string, Form>();
public string FormID{get;set;} = string.Empty;
public Form()
{
if (!Cache.ContainsKey(FormID))
Cache.Add(FormID, new Form());
// exception here because new Form() is always called again
}
}
Я хочу создать экземпляр объекта класса Form внутри Cache. если Cache содержит свойство FormID, то со статическим словарем Cache ничего не произойдет.
Кэш должен содержать один экземпляр для каждого экземпляра из формы с уникальным FormID. это означает, что каждый экземпляр Form имеет экземпляр внутри Cache с тем же FormID. поэтому создание новых экземпляров из клонирования кеша будет быстрым. вот что мне нужно сделать.
Камило Теревинто хорошо ответил ниже.