コード例 #1
0
        /// <summary>
        /// Save data
        /// </summary>
        /// <param name="data">Data</param>
        /// <param name="activationOptions">Activation options</param>
        /// <returns>Return the activation record</returns>
        public IActivationRecord Save(TEntity data, ActivationOptions activationOptions = null)
        {
            WarehouseManager.Save(data);
            var identityValue = data.GetIdentityValue();

            return(DefaultActivationRecord <TEntity, TDataAccess> .CreateSaveRecord(identityValue, activationOptions));
        }
コード例 #2
0
        /// <summary>
        /// save data
        /// </summary>
        /// <param name="data">data</param>
        /// <param name="activationOption">activation option</param>
        /// <returns></returns>
        public async Task <IActivationRecord> SaveAsync(ET data, ActivationOption activationOption = null)
        {
            await WarehouseManager.SaveAsync(data).ConfigureAwait(false);

            var identityValue = data.GetIdentityValue();

            return(DefaultActivationRecord <ET, DAI> .CreateSaveRecord(identityValue, activationOption));
        }
コード例 #3
0
        /// <summary>
        /// save data
        /// </summary>
        /// <typeparam name="ET">entity</typeparam>
        /// <typeparam name="DAI">persistent data service</typeparam>
        /// <param name="datas">datas</param>
        /// <returns></returns>
        public async Task <IActivationRecord> SaveAsync(params ET[] datas)
        {
            if (datas.IsNullOrEmpty())
            {
                return(null);
            }
            await WarehouseManager.SaveAsync(datas);

            var packageRecord = DefaultActivationRecord <ET, DAI> .CreatePackageRecord();

            foreach (var data in datas)
            {
                var identityValue = data.GetIdentityValue();
                packageRecord.AddFollowRecords(DefaultActivationRecord <ET, DAI> .CreateSaveRecord(identityValue));
            }
            return(packageRecord);
        }