private List <AgentArchetypeVariable> ReadAgentArchetypeVariables() { SkipUntilConfiguration("AgentArchetypeVariables"); var variableName = new InputVar <string>("VariableName"); var archetypeName = new InputVar <string>("ArchetypeName"); var variableType = new InputVar <string>("VariableType"); var variableValue = new InputVar <string>("VariableValue"); var agentArchetypeVariables = new List <AgentArchetypeVariable>(); while (!CurrentName.Equals("AgentGoalAttributes")) { var currentLine = new StringReader(CurrentLine); var agentArchetypeVariable = new AgentArchetypeVariable(); // 2021-01-21 Archetype name must come first ReadValue(archetypeName, currentLine); agentArchetypeVariable.ArchetypeName = archetypeName.Value; ReadValue(variableName, currentLine); agentArchetypeVariable.VariableName = variableName.Value; ReadValue(variableType, currentLine); agentArchetypeVariable.VariableType = variableType.Value; ReadValue(variableValue, currentLine); agentArchetypeVariable.VariableValue = variableValue.Value; agentArchetypeVariables.Add(agentArchetypeVariable); GetNextLine(); } return(agentArchetypeVariables); }
private List <AgentArchetype> ReadAgentArchetypes() { SkipUntilConfiguration("AgentArchetypeAttributes"); var archetypeName = new InputVar <string>("ArchetypeName"); var archetypePrefix = new InputVar <string>("ArchetypePrefix"); var dataSetOriented = new InputVar <bool>("DataSetOriented"); var goalImportanceAdjusting = new InputVar <bool>("GoalImportanceAdjusting"); var agentArchetypes = new List <AgentArchetype>(); while (!CurrentName.Equals("AgentArchetypeVariables")) { var currentLine = new StringReader(CurrentLine); var agentArchetype = new AgentArchetype(); ReadValue(archetypeName, currentLine); agentArchetype.ArchetypeName = archetypeName.Value; ReadValue(archetypePrefix, currentLine); agentArchetype.ArchetypePrefix = archetypePrefix.Value; ReadValue(dataSetOriented, currentLine); agentArchetype.DataSetOriented = dataSetOriented.Value; ReadValue(goalImportanceAdjusting, currentLine); agentArchetype.GoalImportanceAdjusting = goalImportanceAdjusting.Value; agentArchetypes.Add(agentArchetype); GetNextLine(); } return(agentArchetypes); }
private void CheckPropertyFlattening(IEnumerable <PropertyInfo> sourceProperties, PropertyInfo targetProperty) { var stack = new Stack <(IEnumerable <PropertyInfo>, string, Expression)>(); stack.Push((sourceProperties, targetProperty.Name, SourceParameter)); while (stack.Any()) { var(SourceProperties, CurrentName, PropertyChain) = stack.Pop(); if (SourceProperties.Any(p => p.Name == CurrentName)) { var sourceProperty = SourceProperties.FirstOrDefault(p => p.Name == CurrentName && p.PropertyType == targetProperty.PropertyType); if (sourceProperty != null) { Bindings.Add(new MemberBinding { SourceExpression = Expression.Property(PropertyChain, sourceProperty), TargetMember = targetProperty }); } } else if (SourceProperties.Any(p => CurrentName.StartsWith(p.Name))) { foreach (var property in SourceProperties.Where(p => CurrentName.StartsWith(p.Name))) { var newName = CurrentName.Substring(property.Name.Length); stack.Push((property.PropertyType.GetProperties(), newName, Expression.Property(PropertyChain, property))); } } } }
protected void UpdateCurrentSerializer(string name = null) { var fullName = String.Join(".", CurrentName.Append(name).Where(x => !String.IsNullOrWhiteSpace(x))); var s = ShouldWriteFunc(fullName) ? Serializer : Deserializer; if (CurrentSerializer != s) { Debug.Log(fullName + " - " + s); SwitchSerializer(s); } }
public ClientNamesSummaryViewModel(DebtorDetailsResponse debtorDetails) { CurrentName.FirstName = debtorDetails.FirstName; CurrentName.MiddleName = debtorDetails.MiddleName; CurrentName.LastName = debtorDetails.LastName; CurrentNameDisplay = CurrentName.GetFullName(); if (debtorDetails.PreviousNames != null && debtorDetails.PreviousNames.Any()) { PreviousNames = debtorDetails.PreviousNames.Select(x => new ClientName { FirstName = x.FirstName, MiddleName = x.MiddleName, LastName = x.LastName, NameId = x.Id }); PreviousNamesDisplay = PreviousNames.Select(x => x.GetFullName()); } }
protected override SheParameters Parse() { ReadLandisDataVar(); var sheParameters = new SheParameters(); // Note: Default mode 2 is already set in the SheParameters constructor // Debugger.Launch(); if (CurrentName.Equals("Mode")) { sheParameters.Modes = ParseModes(); } const string kTimeStep = "Timestep"; var continueLoop = true; while (continueLoop && !string.IsNullOrEmpty(CurrentName)) { // Debugger.Launch(); switch (CurrentName) { case "Mode1SpeciesBiomassLogFile": case "Mode2SpeciesBiomassLogFile": case "Mode3SpeciesBiomassLogFile": { var savedCurrentName = CurrentName; var modeSpeciesBiomassLogFile = new InputVar <string>(CurrentName); ReadVar(modeSpeciesBiomassLogFile); var mode = int.Parse(savedCurrentName.Substring(4, 1)); sheParameters.ModeSpecificBiomassLogFiles[mode] = modeSpeciesBiomassLogFile.Value; break; } case "GenerateSpeciesBiomassForManagementAreas": { var generateSpeciesBiomassForManagementAreas = new InputVar <string>(CurrentName); ReadVar(generateSpeciesBiomassForManagementAreas); if (generateSpeciesBiomassForManagementAreas.Value == "all") { sheParameters.GenerateSpeciesBiomassForAllManagementAreas = true; } else if (generateSpeciesBiomassForManagementAreas.Value == "none") { // do not do anything here } else { foreach ( var managementAreaMapCode in generateSpeciesBiomassForManagementAreas.Value.String.Split(',') .Select(s => uint.Parse(s)) ) { sheParameters.ManagementAreasToGenerateSpeciesBiomassFor.Add(managementAreaMapCode); } } break; } default: { continueLoop = false; break; } } } if (!CurrentName.Equals(kTimeStep)) { throw new Exception($"Invalid parameter: expecting ${kTimeStep}, but received {CurrentName}"); } var timestep = new InputVar <int>(kTimeStep); ReadVar(timestep); sheParameters.Timestep = timestep.Value; var moduleName = new InputVar <string>("ModuleName"); var initializationFileName = new InputVar <string>("InitializationFileName"); while (!CurrentName.Equals("DecisionOptions") && !CurrentName.Equals("AgentToManagementArea")) { var currentLine = new StringReader(CurrentLine); ReadValue(moduleName, currentLine); ReadValue(initializationFileName, currentLine); switch (moduleName.Value) { case "SOSIEL Harvest": sheParameters.SosielInitializationFileName = initializationFileName.Value; break; case "Biomass Harvest": sheParameters.BiomassHarvestInitializationFileName = initializationFileName.Value; break; case "ManagementAreas": sheParameters.ManagementAreaFileName = initializationFileName.Value; break; case "Stands": sheParameters.StandsFileName = initializationFileName.Value; break; } GetNextLine(); } if (CurrentName.Equals("DecisionOptions")) { sheParameters.Prescriptions = ParsePrescriptions(); } if (CurrentName.Equals("AgentToManagementArea")) { sheParameters.AgentToManagementAreaList = ParseAgentToManagementAreaList(sheParameters.Modes); } return(sheParameters); }
public string[,] GetValuefromZeichnugsNrDB(List <string> Eingang) { // string[,] rueckgabe = new string[20, 50]; List <string> DatabaseColums = GetColumsFromTable("TableauInformation"); string[,] rueckgabe = new string[Eingang.Count, DatabaseColums.Count + 1]; int i = 0; foreach (string CurrentName in Eingang) { rueckgabe[i, 0] = CurrentName; //int j = 0; // foreach (string CurrentColum in DatabaseColums) { startConnection(); string SelecName = CurrentName.Replace("_", ""); string select = "select * from TableauInformation where TableauName like '" + SelecName + "'"; try { SQLiteCommand command = new SQLiteCommand(_connection); command.CommandText = select; SQLiteDataReader reader = command.ExecuteReader(); while (reader.Read()) { for (int j = 0; j < DatabaseColums.Count; j++) { rueckgabe[i, j + 1] = (reader[j].ToString()); } } // Beenden des Readers und Freigabe aller Ressourcen. reader.Close(); reader.Dispose(); command.Dispose(); } catch (SqlException e) { // MessageBox.Show(e.Message); } _connection.Close(); _connection.Dispose(); // j++; } i++; } return(rueckgabe); }
public void UpdateNameBySimpleReplace(string searchString, string replaceString, bool ignoreCase) { CurrentName = CurrentName.Replace(searchString, replaceString, ignoreCase, CultureInfo.CurrentCulture); _isMatch = false; }