public SingleResult <CmpInterfaceModel.Models.VmMigrationRequest> GetVmMigrationRequest([FromODataUri] int key) { try { using (CmpServiceLib.CmpService CMP = new CmpServiceLib.CmpService(_EventLog, _CmpDbConnectionString, _AftsDbConnectionString)) { CmpServiceLib.Models.VmMigrationRequest vmMigrationRequest = CMP.FetchMigrationRequest(key); if (null == vmMigrationRequest) { return(null); } var vmr = new List <CmpInterfaceModel.Models.VmMigrationRequest>(); vmr.Add(ServToInt(vmMigrationRequest)); return(SingleResult.Create(vmr.AsQueryable())); } } catch (Exception ex) { LogThis(ex, EventLogEntryType.Error, "Exception in GetVmMigrationRequest()", 100, 100); throw; } //return SingleResult.Create(db.VmMigrationRequests.Where(vmmigrationrequest => vmmigrationrequest.ID == key)); }
//********************************************************************* /// /// <summary> /// /// </summary> /// <param name="vmMigrateRequest"></param> /// <returns></returns> /// //********************************************************************* CmpServiceLib.Models.VmMigrationRequest IntToServ( CmpInterfaceModel.Models.VmMigrationRequest vmMigrateRequest) { if (null == vmMigrateRequest) { return(null); } var Ret = new CmpServiceLib.Models.VmMigrationRequest { ID = vmMigrateRequest.ID, VmDeploymentRequestID = vmMigrateRequest.VmDeploymentRequestID, VmSize = vmMigrateRequest.VmSize, Config = vmMigrateRequest.Config, TargetVmName = vmMigrateRequest.TargetVmName, SourceServerName = vmMigrateRequest.SourceServerName, SourceVhdFilesCSV = vmMigrateRequest.SourceVhdFilesCSV, ExceptionMessage = vmMigrateRequest.ExceptionMessage, LastStatusUpdate = NonNull(vmMigrateRequest.LastStatusUpdate), StatusCode = vmMigrateRequest.StatusCode, StatusMessage = vmMigrateRequest.StatusMessage, AgentRegion = vmMigrateRequest.AgentRegion, AgentName = vmMigrateRequest.AgentName, CurrentStateStartTime = NonNull(vmMigrateRequest.CurrentStateStartTime), CurrentStateTryCount = NonNull(vmMigrateRequest.CurrentStateTryCount), Warnings = vmMigrateRequest.Warnings, Active = NonNull(vmMigrateRequest.Active) }; return(Ret); }
//********************************************************************* /// /// <summary> /// PUT odata/VmMigrations(5) /// </summary> /// <param name="key"></param> /// <param name="vmmigrationrequest"></param> /// <returns></returns> /// //********************************************************************* //[Authorize] public async Task <IHttpActionResult> Put([FromODataUri] int key, CmpInterfaceModel.Models.VmMigrationRequest vmmigrationrequest) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (key != vmmigrationrequest.ID) { return(BadRequest()); } /*db.Entry(vmmigrationrequest).State = EntityState.Modified; * * try * { * await db.SaveChangesAsync(); * } * catch (DbUpdateConcurrencyException) * { * if (!VmMigrationRequestExists(key)) * { * return NotFound(); * } * else * { * throw; * } * } * * return Updated(vmmigrationrequest);*/ ////////////////////// try { DateTime Now = DateTime.UtcNow; vmmigrationrequest.LastStatusUpdate = DateTime.UtcNow; CmpServiceLib.Models.VmMigrationRequest vmMigReq = IntToServ(vmmigrationrequest); CmpServiceLib.CmpService CMP = new CmpServiceLib.CmpService(_EventLog, _CmpDbConnectionString, _AftsDbConnectionString); CMP.UpdateVmMigrationRequest(vmMigReq, null, true, null); return(Updated(vmmigrationrequest)); } catch (Exception ex) { LogThis(ex, EventLogEntryType.Error, "Exception in Put()", 100, 100); throw ex; } }