public CarFlyweight GetFlyweight(CarFlyweight car) { var key = GetKey(car); if (!FlyWeights.ContainsKey(key)) { FlyWeights[key] = car; } return(FlyWeights[key]); }
public string GetKey(CarFlyweight car) { var list = new { color = car.Color.ToArgb().ToString("x"), car.Company, car.Model }; return(string.Join("_", list)); }