public static string GetKey(this GenerationMetadata mt) { var s = mt.ToString(); if (s.Length <= 1) { return(s.ToLower()); } return(char.ToLower(s[0]) + s.Substring(1)); }
private void UpdateTaskStatus(StringBuilder taskGuid, int progress, IntPtr evaluatedValuesPtr, int evaluatedValuesLength, GenerationMetadata generationMetadata) { var evaluatedValues = new double[evaluatedValuesLength]; Marshal.Copy(evaluatedValuesPtr, evaluatedValues, 0, evaluatedValuesLength); Console.WriteLine($"UpdateTaskStatusCalled with progress: {progress}, guid: {taskGuid},struct: {generationMetadata.BestFitness}/{generationMetadata.BestFitnessInGeneration}"); var task = _taskRepository.GetApproximationTask(Guid.Parse(taskGuid.ToString())); task.TaskProgress = progress; task.Result.EvaluatedValues = evaluatedValues; task.Result.ValuesNumber = evaluatedValuesLength; task.Result.AlgorithmRunMetadata.Add(generationMetadata); _taskRepository.UpdateTaskProgress(Guid.Parse(taskGuid.ToString()), progress); }