public static void SetMultiSelectLookupValueForPropertyDefCache <T>(this IObjVerEx ot, int property_id, IList <T> value) where T : class, IObjVerEx, new()
        {
            ot.RemoveCachedProperty(property_id);
            MultiSelectOTProperty <T> pd_value = new MultiSelectOTProperty <T>(ot, property_id, value);

            ot.CacheProperty(property_id, pd_value);
        }
        public static MultiSelectOTProperty <T> GetMultiSelectLookupValueForPropertyDefCache <T>(this IObjVerEx ot, int property_id) where T : class, IObjVerEx, new()
        {
            if (ot.object_properties_cache.ContainsKey(property_id))
            {
                return(ot.object_properties_cache[property_id] as MultiSelectOTProperty <T>);
            }
            MultiSelectOTProperty <T> pd_value = new MultiSelectOTProperty <T>(ot, property_id);

            ot.CacheProperty(property_id, pd_value);
            return(pd_value);
        }