public T GetBusinessObject <T>(IPrimaryKey key) where T : class, IBusinessObject
 {
     if (BusinessObject.AllLoadedBusinessObjects().ContainsKey(key.GetObjectId()))
     {
         return((T)BusinessObject.AllLoadedBusinessObjects()[key.GetObjectId()].Target);
     }
     else
     {
         return((T)BOLoader.Instance.GetBusinessObjectByID(typeof(T), key));
     }
 }