به نظر شما گذاشتن کدی مثل کد زیر جاهایی که میخواین نمونه سازی کنیم و در تمام قسمتهای کلاس ازش استفاده کنیم چطوره؟

private CityRepository _cityRepo ;

protected override CityRepository RepositoryObject
{
get { return _cityRepo ?? (_cityRepo = new CityRepository ()); }
}


اول کلاس اینو بنویسیم و همه جا به جای cityRepo از RepositoryObject استفاده کنیم.
برای برنامه احیانا مشکلی ایجاد نمی کنه؟ آیا اصلا این کار خوبه یا اینکه فرقی با نمونه سازی عادی نداره؟