/// <summary> /// /// </summary> /// <param name="field"></param> /// <returns></returns> internal static Action <TEntity, object> Get(Field field) { var key = (long)typeof(TEntity).GetHashCode() + field.GetHashCode(); var func = (Action <TEntity, object>)null; if (cache.TryGetValue(key, out func) == false) { func = FunctionFactory.CompileDataEntityPropertySetter <TEntity>(field); cache.TryAdd(key, func); } return(func); }
/// <summary> /// /// </summary> /// <param name="field"></param> /// <returns></returns> internal static Action <TEntity, object> Get(Field field) { var key = (long)typeof(TEntity).GetHashCode() + field.GetHashCode(); if (cache.TryGetValue(key, out var func) == false) { if (typeof(TEntity).IsDictionaryStringObject()) { func = FunctionFactory.CompileDictionaryStringObjectItemSetter <TEntity>(field); } else { func = FunctionFactory.CompileDataEntityPropertySetter <TEntity>(field); } cache.TryAdd(key, func); } return(func); }