/// <summary> /// Get value from <see cref="IExtendableEntity.ExtensionInfo"/>. /// </summary> /// <typeparam name="T">Value type.</typeparam> /// <param name="entity">Entity.</param> /// <param name="key">Key.</param> /// <returns>Value.</returns> public static T GetValue <T>(this IExtendableEntity entity, string key) { var info = entity.GetExtInfo(false); if (info == null) { return(default);
/// <summary> /// Get value from <see cref="IExtendableEntity.ExtensionInfo"/>. /// </summary> /// <typeparam name="T">Value type.</typeparam> /// <param name="entity">Entity.</param> /// <param name="key">Key.</param> /// <returns>Value.</returns> public static T GetValue <T>(this IExtendableEntity entity, object key) { var info = entity.GetExtInfo(false); if (info == null) { return(default(T)); } return((T)(info.TryGetValue(key) ?? default(T))); }
/// <summary> /// Add value into <see cref="IExtendableEntity.ExtensionInfo"/>. /// </summary> /// <param name="entity">Entity.</param> /// <param name="key">Key.</param> /// <param name="value">Value.</param> public static void AddValue(this IExtendableEntity entity, object key, object value) { entity.GetExtInfo(true)[key] = value; }