public void WriteEntry([NotNull] DesireEntry entry, [NotNull] HouseholdKey householdKey) { if (!_writeDesiresHeader.ContainsKey(GetKey(entry, householdKey))) { _desireFiles.Add(GetKey(entry, householdKey), _fft.MakeFile <StreamWriter>("Desires." + householdKey + "." + entry.PersonName + ".csv", "Desire values for " + entry.PersonName + " for household #" + householdKey, true, ResultFileID.DesireFiles, householdKey, TargetDirectory.Reports, _calcParameters.InternalStepsize, CalcOption.DesiresLogfile, null, entry.CPerson.MakePersonInformation())); var header = _dsc.GenerateDateStampHeader(); _desireFiles[GetKey(entry, householdKey)].Write(header + "Person"); _desireFiles[GetKey(entry, householdKey)].WriteLine(entry.GenerateHeader()); _writeDesiresHeader.Add(GetKey(entry, householdKey), true); } if (!entry.Timestep.DisplayThisStep) { return; } _desireFiles[GetKey(entry, householdKey)].WriteLine(entry.ToString()); }
private static string GetKey([NotNull] DesireEntry e, [NotNull] HouseholdKey householdKey) => householdKey + "###" + e.PersonName;