/// <summary> /// single item insert/update with entity input /// </summary> /// <param name="input">to-be-insert/updated instance of entity class</param> public async Task <Elmah.DataSourceEntities.DataAccessLayerMessageOfEntityCollectionElmahSource> Upsert(Elmah.DataSourceEntities.ElmahSource input) { //log.Info(string.Format("{0}: Update", Framework.Models.LoggingOptions.Data_Access_Layer_Process_Started.ToString())); var _retval = new Elmah.DataSourceEntities.DataAccessLayerMessageOfEntityCollectionElmahSource(); _retval.OriginalValue = new List <Elmah.DataSourceEntities.ElmahSource>(); _retval.OriginalValue.Add(input); if (input != null) { var _LinqItem = await GetLinqObjectByIdentifier(input); if (_LinqItem == null) { _LinqItem = input.GetAClone <Elmah.EntityFrameworkContext.ElmahSource>(); LinqContext.ElmahSource.Add(_LinqItem); } else { input.CopyTo <Elmah.EntityFrameworkContext.ElmahSource>(_LinqItem); } await this.LinqContext.SaveChangesAsync(); Elmah.DataSourceEntities.ElmahSource _Result = new Elmah.DataSourceEntities.ElmahSource(); _Result.CopyFrom <Elmah.EntityFrameworkContext.ElmahSource>(_LinqItem); _retval.Result = new List <Elmah.DataSourceEntities.ElmahSource>(); _retval.Result.Add(_Result); } //log.Info(string.Format("{0}: Update", Framework.Models.LoggingOptions.Data_Access_Layer_Process_Started.ToString())); return(_retval); }
/// <summary> /// single item delete by identifier with entity identifier input /// </summary> /// <param name="id">delete the item if its identifier equals to this parameter</param> public async Task <Elmah.DataSourceEntities.DataAccessLayerMessageOfEntityCollectionElmahSource> DeleteByIdentifier(Elmah.DataSourceEntities.ElmahSourceIdentifier id) { //log.Info(string.Format("{0}: DeleteByIdentifier", Framework.Models.LoggingOptions.Data_Access_Layer_Process_Started.ToString())); Elmah.DataSourceEntities.DataAccessLayerMessageOfEntityCollectionElmahSource _retval = new Elmah.DataSourceEntities.DataAccessLayerMessageOfEntityCollectionElmahSource(); if (id != null) { Elmah.EntityFrameworkContext.ElmahSource _LinqItem = await GetLinqObjectByIdentifier(id); if (_LinqItem != null) { Elmah.DataSourceEntities.ElmahSource _Original = new Elmah.DataSourceEntities.ElmahSource(); _Original.CopyFrom <Elmah.EntityFrameworkContext.ElmahSource>(_LinqItem); _retval.OriginalValue = new List <Elmah.DataSourceEntities.ElmahSource>(); _retval.OriginalValue.Add(_Original); this.LinqContext.ElmahSource.Remove(_LinqItem); await this.LinqContext.SaveChangesAsync(); } } //log.Info(string.Format("{0}: DeleteByIdentifier", Framework.Models.LoggingOptions.Data_Access_Layer_Process_Ended.ToString())); return(_retval); }
/// <summary> /// Insert/Update an entity of <see cref=" Elmah.DataSourceEntities.ElmahSource"/>. /// http://[host]/api/ElmahSourceApi/UpsertEntity /// </summary> /// <param name="input">input entity</param> public async Task <Elmah.CommonBLLEntities.ElmahSourceResponseMessageBuiltIn> UpsertEntityAsync( Elmah.DataSourceEntities.ElmahSource input) { const string ActionName_UpsertEntity = "UpsertEntity"; string url = GetHttpRequestUrl(ActionName_UpsertEntity); return(await Post <Elmah.DataSourceEntities.ElmahSource, Elmah.CommonBLLEntities.ElmahSourceResponseMessageBuiltIn>(url, input)); }
public async Task <Elmah.CommonBLLEntities.ElmahSourceResponseMessageBuiltIn> UpsertEntity( [FromBody] Elmah.DataSourceEntities.ElmahSource input) { var request = new Elmah.CommonBLLEntities.ElmahSourceRequestMessageBuiltIn(); request.Criteria.Add(input); Elmah.CommonBLLEntities.ElmahSourceResponseMessageBuiltIn responseMessage = await this.ThisService.UpsertEntity(request); return(responseMessage);; }
private Elmah.DataSourceEntities.ElmahSource CreateEmptyEntityOrGetFromTempData(string tempDataKey_ElmahSourceController_Copy) { Elmah.DataSourceEntities.ElmahSource entity; if (TempData.ContainsKey(tempDataKey_ElmahSourceController_Copy) && TempData[tempDataKey_ElmahSourceController_Copy] != null) { try { entity = (Elmah.DataSourceEntities.ElmahSource)TempData[tempDataKey_ElmahSourceController_Copy]; TempData.Keep(tempDataKey_ElmahSourceController_Copy); } catch { entity = new Elmah.DataSourceEntities.ElmahSource(); } } else { entity = new Elmah.DataSourceEntities.ElmahSource(); } return(entity); }
public static async Task <T> CreateNewViewModel <T>(IServiceProvider serviceProvider, Elmah.DataSourceEntities.ElmahSource entity) where T : ItemVM, new() { var uiAction = Framework.ViewModels.UIAction.Create; T vm = new T(); vm.ContentData.Title = string.Format("{0} {1}", Framework.Resx.UIStringResource.AddNew, Elmah.Resx.UIStringResourcePerApp.ElmahSource); //TODO: create a new new entry in xxx.UIStringResourceExt.resx file if you need, and uncomment next line, reference resource key here, then add in .cshtml file. //vm.ContentData.Summary = string.Format("{0} {1}", Framework.Resx.UIStringResource.AddNew, Elmah.Resx.UIStringResourcePerApp.ElmahSource); vm.ServiceProvider = serviceProvider; await vm.LoadExtraData(uiAction); vm.Item = entity; vm.UIActionStatusMessage = new Framework.ViewModels.UIActionStatusMessage(typeof(ItemVM).FullName, uiAction.ToString(), uiAction, Framework.ViewModels.UIActionStatus.Launch); return(vm); }
public static async Task <ItemVM> CreateNewViewModel(IServiceProvider serviceProvider, Elmah.DataSourceEntities.ElmahSource entity) { return(await CreateNewViewModel <ItemVM>(serviceProvider, entity)); }