/// <summary> /// 设置对象状态。 /// </summary> /// <param name="state">给定的 <see cref="IObjectState"/>。</param> /// <param name="newStatusFactory">给定的新对象状态工厂方法。</param> /// <returns>返回状态(兼容不支持枚举类型的实体框架)。</returns> public static object SetObjectStatusAsync(this IObjectState state, Func <object, object> newStatusFactory) { var currentStatus = state.GetObjectStatus(); return(state.SetObjectStatus(newStatusFactory(currentStatus))); }
public static object SetObjectStatusAsync(this IObjectState state, Func <object, object> newStatusFactory) { state.NotNull(nameof(state)); newStatusFactory.NotNull(nameof(newStatusFactory)); var newStatus = state.GetObjectStatus(); return(state.SetObjectStatus(newStatusFactory.Invoke(newStatus))); }