public override void Run(HouseholdKey key, object o) { var objects = (List <IHouseholdKey>)o; var actionEntries = objects.ConvertAll(x => (SingleTimestepActionEntry)x).ToList(); var rowEntries = new List <Dictionary <string, object> >(); foreach (var affordanceEnergyUseEntry in actionEntries) { rowEntries.Add(RowBuilder.Start("Timestep", affordanceEnergyUseEntry.TimeStep) .Add("Json", JsonConvert.SerializeObject(affordanceEnergyUseEntry, Formatting.Indented)).ToDictionary()); } SaveableEntry se = new SaveableEntry(key, ResultTableDefinition); se.AddField("Timestep", SqliteDataType.Text); se.AddField("Json", SqliteDataType.Text); foreach (Dictionary <string, object> entry in rowEntries) { se.AddRow(entry); } if (Srls == null) { throw new LPGException("Data Logger was null."); } Srls.SaveResultEntry(se); }
public override void Run(HouseholdKey key, object o) { TemperatureProfile tp = (TemperatureProfile)o; var tempProfile = tp.GetTemperatureArray(_calcParameters.InternalStartTime, _calcParameters.OfficialEndTime, _calcParameters.InternalStepsize); DateStampCreator dsc = new DateStampCreator(_calcParameters); if (!_calcParameters.IsSet(CalcOption.TemperatureFile)) { return; } // var allTemperatures = new List<UsedTemperatures>(); SaveableEntry se = new SaveableEntry(key, ResultTableDefinition); se.AddField("Timestep", SqliteDataType.Integer); se.AddField("DateTime", SqliteDataType.Text); se.AddField("Temperature", SqliteDataType.Double); for (var i = 0; i < _calcParameters.OfficalTimesteps; i++) { string timestamp = dsc.MakeDateStringFromTimeStep(new TimeStep(i, 0, false)); se.AddRow(RowBuilder.Start("Timestep", i).Add("DateTime", timestamp).Add("Temperature", tempProfile[i]).ToDictionary()); } _srls.SaveResultEntry(se); }
public override void Run(HouseholdKey key, object o) { var hh = (HouseholdKeyEntry)o; //check for duplicates if (!_savedKeys.Add(hh.HHKey)) { return; //throw new LPGException("Householdkey already existed"); } if (!_isTableCreated) { SaveableEntry se = GetStandardSaveableEntry(key); se.AddRow(RowBuilder.Start("Name", hh.HHKey) .Add("Json", JsonConvert.SerializeObject(hh, Formatting.Indented)).ToDictionary()); if (Srls == null) { throw new LPGException("Data Logger was null."); } Srls.SaveResultEntry(se); _isTableCreated = true; return; } var dict = RowBuilder.Start("Name", hh.HHKey) .Add("Json", JsonConvert.SerializeObject(hh, Formatting.Indented)).ToDictionary(); if (Srls == null) { throw new LPGException("Data Logger was null."); } Srls.SaveDictionaryToDatabaseNewConnection(dict, TableName, Constants.GeneralHouseholdKey); }
/// <summary> /// 配置 /// </summary> private void Config(RowBuilder builder) { ConfigId(builder); ConfigColumns(builder); ConfigEvents(builder); builder.AddSelected(_tableId); }
protected override void RunActualProcess() { var dbRaw = Services.SqlConnectionPreparer.GetDatabaseConnection(Stage.Raw, Constants.PresentSlice); var dbHouse = Services.SqlConnectionPreparer.GetDatabaseConnection(Stage.Houses, Constants.PresentSlice); var houses = dbHouse.Fetch <House>(); var ebbe = dbRaw.Fetch <EnergiebedarfsdatenBern>(); RowCollection rc = new RowCollection("Analysis", "Analysis"); foreach (var house in houses) { RowBuilder rb = RowBuilder.Start("House", house.ComplexName); var ebbedata = ebbe.Where(x => house.EGIDs.Contains((int)x.egid)).ToList(); foreach (var ebbeSet in ebbedata) { ebbe.Remove(ebbeSet); } rb.Add("Ebbe", JsonConvert.SerializeObject(ebbedata)); rc.Add(rb); } foreach (var ebbeset in ebbe) { RowBuilder rb = RowBuilder.Start("Ebbe eGid", ebbeset.egid); rb.Add("Ebbe", JsonConvert.SerializeObject(ebbeset)); rc.Add(rb); } var fn = MakeAndRegisterFullFilename("HeatingSystemAnalysis.xlsx", Constants.PresentSlice); XlsxDumper.WriteToXlsx(fn, rc); }
public override void Run(HouseholdKey key, object o) { DayLightStatus dayLightStatus = (DayLightStatus)o; //List<EveryDayLightTimes> daylights = new List<EveryDayLightTimes>(); var startTimeStep = 0; if (!_calcParameters.ShowSettlingPeriodTime) { startTimeStep = _calcParameters.DummyCalcSteps; } SaveableEntry se = new SaveableEntry(key, ResultTableDefinition); se.AddField("Timestep", SqliteDataType.Integer); se.AddField("DateTime", SqliteDataType.Integer); se.AddField("Daylight", SqliteDataType.Bit); for (var i = startTimeStep; i < dayLightStatus.Status.Count; i++) { TimeStep ts = new TimeStep(i, _calcParameters); string timestamp = _dsc.MakeDateStringFromTimeStep(ts); se.AddRow(RowBuilder.Start("Timestep", ts.ExternalStep).Add("DateTime", timestamp).Add("Daylight", dayLightStatus.Status[i]).ToDictionary()); //EveryDayLightTimes edlt = new EveryDayLightTimes(timestamp,timestep, ); //daylights.Add(edlt); } _srls.SaveResultEntry(se); }
public override void Run(HouseholdKey key, object o) { CalcStartParameterSet csps = (CalcStartParameterSet)o; SaveableEntry se = new SaveableEntry(key, ResultTableDefinition); se.AddField("Name", SqliteDataType.Text); se.AddField("Value", SqliteDataType.Text); se.AddRow(RowBuilder.Start("Name", "CsvCharacter").Add("Value", csps.CsvCharacter).ToDictionary()); se.AddRow(RowBuilder.Start("Name", "Temperature Profile").Add("Value", csps.TemperatureProfile.Name).ToDictionary()); se.AddRow(RowBuilder.Start("Name", "AffordanceRepetitionCount").Add("Value", csps.AffordanceRepetitionCount.ToString(CultureInfo.InvariantCulture)).ToDictionary()); se.AddRow(RowBuilder.Start("Name", "CalcOptions").Add("Value", JsonConvert.SerializeObject(csps.CalcOptions, Formatting.Indented)).ToDictionary()); se.AddRow(RowBuilder.Start("Name", "CalcTarget").Add("Value", csps.CalcTarget.Name).ToDictionary()); se.AddRow(RowBuilder.Start("Name", "DeleteDatFiles").Add("Value", csps.DeleteDatFiles.ToString()).ToDictionary()); se.AddRow(RowBuilder.Start("Name", "DeviceSelection").Add("Value", csps.DeviceSelection?.Name ?? "None").ToDictionary()); se.AddRow(RowBuilder.Start("Name", "EnergyIntensity").Add("Value", csps.EnergyIntensity.ToString()).ToDictionary()); se.AddRow(RowBuilder.Start("Name", "ExternalTimeResolution").Add("Value", csps.ExternalTimeResolution.ToString()).ToDictionary()); se.AddRow(RowBuilder.Start("Name", "GeographicLocation").Add("Value", csps.GeographicLocation.Name).ToDictionary()); se.AddRow(RowBuilder.Start("Name", "InternalTimeResolution").Add("Value", csps.InternalTimeResolution.ToString()).ToDictionary()); se.AddRow(RowBuilder.Start("Name", "LPGVersion").Add("Value", csps.LPGVersion).ToDictionary()); se.AddRow(RowBuilder.Start("Name", "LoadTypePriority").Add("Value", csps.LoadTypePriority.ToString()).ToDictionary()); se.AddRow(RowBuilder.Start("Name", "OfficialSimulationStartTime").Add("Value", csps.OfficialSimulationStartTime.ToString(CultureInfo.InvariantCulture)).ToDictionary()); se.AddRow(RowBuilder.Start("Name", "OfficialSimulationEndTime").Add("Value", csps.OfficialSimulationEndTime.ToString(CultureInfo.InvariantCulture)).ToDictionary()); se.AddRow(RowBuilder.Start("Name", "SelectedRandomSeed").Add("Value", csps.SelectedRandomSeed.ToString(CultureInfo.InvariantCulture)).ToDictionary()); se.AddRow(RowBuilder.Start("Name", "SettlingDays").Add("Value", csps.SettlingDays.ToString(CultureInfo.InvariantCulture)).ToDictionary()); se.AddRow(RowBuilder.Start("Name", "ShowSettlingPeriod").Add("Value", csps.ShowSettlingPeriod.ToString()).ToDictionary()); se.AddRow(RowBuilder.Start("Name", "TransportationDeviceSet").Add("Value", csps.TransportationDeviceSet?.Name ?? "None").ToDictionary()); se.AddRow(RowBuilder.Start("Name", "TravelRouteSet").Add("Value", csps.TravelRouteSet?.Name ?? "None").ToDictionary()); if (Srls == null) { throw new LPGException("Data Logger was null."); } Srls.SaveResultEntry(se); }
public void RowClick(bool apply) { RowBuilder <TableEntity> builder = _builder.RowClick("jsFunc", apply); _builder.Config.RowClick.Should().Be(apply ? "jsFunc" : null); builder.Should().BeSameAs(_builder); }
public void Contextual(bool apply) { RowBuilder <TableEntity> builder = _builder.Contextual(ContextualState.Danger, apply); _builder.Config.State.Should().Be(apply ? ContextualState.Danger : ContextualState.Default); builder.Should().BeSameAs(_builder); }
public void NavigationUrl() { RowBuilder <TableEntity> builder = _builder.NavigationUrl("Url"); _builder.Config.NavigationUrl.Should().Be("Url"); builder.Should().BeSameAs(_builder); }
public override void Run(HouseholdKey key, object o) { var objects = (List <IHouseholdKey>)o; var transportationDeviceStateEntries = objects.ConvertAll(x => (ChargingStationState)x).ToList(); SaveableEntry se = new SaveableEntry(key, ResultTableDefinition); se.AddField("Time", SqliteDataType.Integer); se.AddField("ChargingStationName", SqliteDataType.Text); se.AddField("IsAvailable", SqliteDataType.Bit); se.AddField("CarName", SqliteDataType.Text); se.AddField("ChargingPower", SqliteDataType.Double); se.AddField("Json", SqliteDataType.JsonField); foreach (var ae in transportationDeviceStateEntries) { se.AddRow(RowBuilder.Start("Time", ae.TimeStep) .Add("ChargingStationName", ae.ChargingStationName) .Add("IsAvailable", ae.IsAvailable?1:0) .Add("CarName", ae.ConnectedCarName) .Add("ChargingPower", ae.ChargingPower) .Add("Json", JsonConvert.SerializeObject(ae, Formatting.Indented)).ToDictionary()); } if (Srls == null) { throw new LPGException("Data Logger was null."); } Srls.SaveResultEntry(se); }
public void collect_lambda() { Func<int> lambda = () => 42; var rows = new RowBuilder<RowBuilderSpec>() .Add(x => x.Lambda(lambda)); Check.That(() => (Func<int>)rows[0].Parameters[0] == lambda); }
protected override void RunActualProcess([NotNull][ItemNotNull] List <ScenarioSliceParameters> allSlices, [NotNull] AnalysisRepository analysisRepo) { Info("starting to make house results"); var sheets = new List <RowCollection>(); foreach (var slice in allSlices) { RowCollection rc = new RowCollection(slice.DstScenario.ShortName + "_" + slice.DstYear, slice.DstScenario.Name + " - " + slice.DstYear); var pventries = analysisRepo.GetSlice(slice).Fetch <PvSystemEntry>(); var houses = analysisRepo.GetSlice(slice).Fetch <House>(); var pvPotential = analysisRepo.GetSlice(slice).Fetch <PVPotential>(); foreach (var house in houses) { var pventriesInHouse = pventries.GetByReferenceGuidWithEmptyReturns(house.HouseGuid, "HouseGuid", y => y.HouseGuid); var rb = RowBuilder.Start("House", house.ComplexName); var pvPotentialsInHouse = pvPotential.GetByReferenceGuidWithEmptyReturns(house.HouseGuid, "HouseGuid", y => y.HouseGuid); rb.Add("PV entries", pventriesInHouse.Count); if (pventriesInHouse.Count > 0) { rb.Add("PV Year", pventriesInHouse.Max(x => x.BuildYear)); } rb.Add("EnergySum", pventriesInHouse.Sum(x => x.EffectiveEnergyDemand)); rb.Add("Potential Count", pvPotentialsInHouse.Count); rb.Add("Potential Energy Sum", pvPotentialsInHouse.Sum(x => x.SonnendachStromErtrag)); rc.Add(rb); } sheets.Add(rc); } var fn = MakeAndRegisterFullFilename("PVAnalysis.xlsx", Constants.PresentSlice); XlsxDumper.WriteToXlsx(fn, sheets); }
public override void Run(HouseholdKey key, object o) { var sets = (BridgeDayEntries)o; if (sets.Entries.Count == 0) { Logger.Info("No bridge days were found."); return; } SaveableEntry se = new SaveableEntry(key, ResultTableDefinition); se.AddField("BridgeDay", SqliteDataType.DateTime); se.AddField("BridgeDayJson", SqliteDataType.Text); foreach (var afftagset in sets.Entries) { se.AddRow(RowBuilder.Start("BridgeDay", afftagset) .Add("BridgeDayJson", JsonConvert.SerializeObject(afftagset, Formatting.Indented)).ToDictionary()); } if (Srls == null) { throw new LPGException("Data Logger was null."); } Srls.SaveResultEntry(se); }
/// <summary> /// 获取标签生成器 /// </summary> protected override TagBuilder GetTagBuilder() { var builder = new RowBuilder(); Config(builder); return(builder); }
public override void Run(HouseholdKey key, object o) { var objects = (List <IHouseholdKey>)o; var actionEntries = objects.ConvertAll(x => (PersonStatus)x).ToList(); SaveableEntry se = new SaveableEntry(key, ResultTableDefinition); se.AddField("TimeStep", SqliteDataType.Text); se.AddField("PersonName", SqliteDataType.Text); se.AddField("AffordanceName", SqliteDataType.Text); se.AddField("LocationName", SqliteDataType.Text); se.AddField("SiteName", SqliteDataType.Text); se.AddField("Json", SqliteDataType.Text); foreach (var actionEntry in actionEntries) { se.AddRow(RowBuilder.Start("PersonName", actionEntry.PersonName).Add("AffordanceName", actionEntry.ActiveAffordance) .Add("TimeStep", actionEntry.TimeStep).Add("LocationName", actionEntry.LocationName).Add("SiteName", actionEntry.SiteName) .Add("Json", JsonConvert.SerializeObject(actionEntry, Formatting.Indented)).ToDictionary()); } if (Srls == null) { throw new LPGException("Data Logger was null."); } Srls.SaveResultEntry(se); }
/// <summary> /// 配置列集合 /// </summary> private void ConfigColumns(RowBuilder builder) { if (_config.Contains(UiConst.Columns)) { builder.AddColumns(_config.GetValue(UiConst.Columns)); } }
public void SetUp() { _collection = new SnapshotCollection(); _collection.DefineTable("Test").CompareKey("Key"); _snapshot = _collection.NewSnapshot("TestSnapshot"); _row = _snapshot.AddNewRow("Test"); }
public static FormViewModel CreateForm() { var htmlContent = new HtmlElementBuilder().SetName("HtmlContent").SetContent( "<h2 style=\"text-align: center;\"><strong>Demo Form<br /></strong></h2>\r\n<p>Test HTML Content embedded in the demo form</p>\r\n<ul>\r\n<li>FirstName / LastName</li>\r\n<li>Years of experiance</li>\r\n<li>Accept Terms and Conditions</li>\r\n<li>Submit</li>\r\n</ul>") .Build(); var firstNameText = new TextElementBuilder() .SetName("First Name") .SetLabel(ElementLabel.Left("First Name: ")) .SetDefaultValue("First Name") .AddRules( ValidationRule <ITextElementViewModel> .Create(new TextElement_MaximumLength_Validator(10)) .WithFailMessage("First Name must be less then 10 characters"), ValidationRule <ITextElementViewModel> .Create(new TextElement_MinimunLength_Validator(2)) .WithFailMessage("First Name must be greater then 2 characters")) .Build(); var lastNameText = new TextElementBuilder() .SetName("Last Name") .SetLabel(ElementLabel.Left("Last Name: ")) .SetDefaultValue("Last Name") .AddRules( ValidationRule <ITextElementViewModel> .Create(new TextElement_MaximumLength_Validator(10)) .WithFailMessage("Last Name must be less then 10 characters"), ValidationRule <ITextElementViewModel> .Create(new TextElement_MinimunLength_Validator(2)) .WithFailMessage("Last Name must be greater then 2 characters")) .Build(); var personalDetails = new ColumnBuilder().SetName("personalDetails") .AddChildren(firstNameText, lastNameText).Build(); var experienceSelection = new SelectElementBuilder().SetName("experienceSelection") .SetLabel(ElementLabel.Left("How many years experience have you got?")).AddValues("0-1", "1-5", "5+") .SetDefaultValue("Select a value").Build(); var termsAndConditions = new CheckElementBuilder().SetName("TermsAndConditions") .SetLabel(ElementLabel.Left("Do you accept the terms and conditions?")).SetContent("Yes / No").AddRules( ValidationRule <ICheckElementViewModel> .Create(new CheckElement_IsChecked_Validator()) .WithFailMessage("You must accept the terms and conditions")).Build(); var submitButton = new ButtonElementBuilder().SetName("Submit Button").SetContent("Submit") .SetVerticalAlignment(VerticalAlignment.Bottom).Build(); var submitEventListener = new EventListener("submit", new ElementNameEventSpecification("submit").And( new TypeNameEventSpecification(nameof(ButtonElementClickedEvent))), new IdentitySpecification <FormViewModel>()); var rowGroup1 = new RowBuilder().SetName("Data Entry Rows") .AddChildren(htmlContent, personalDetails, experienceSelection, termsAndConditions).Build(); var rootGroup = new GroupBuilder().SetName("Test Group 1").SetTitle("Demo Form Title") .AddChildren(rowGroup1, submitButton).Build(); var newForm = new FormBuilder().SetName("Demo Form").SetTitle("Demo Form Title").SetRoot(rootGroup) .AddEventListeners(submitEventListener) .Build(); return(new FormViewModel(newForm)); }
public void GivenARow() { var row = new RowBuilder().Build(); _appContext.Row = row; _appContext.DataContext.Rows.Add(row); }
public override void Run(HouseholdKey key, object o) { var objects = (List <IHouseholdKey>)o; var transportationDeviceStateEntries = objects.ConvertAll(x => (TransportationDeviceStateEntry)x).ToList(); SaveableEntry se = new SaveableEntry(key, ResultTableDefinition); se.AddField("Time", SqliteDataType.Integer); se.AddField("DateTime", SqliteDataType.Integer); se.AddField("DeviceName", SqliteDataType.Text); se.AddField("User", SqliteDataType.Text); se.AddField("DeviceState", SqliteDataType.Text); se.AddField("NumericDeviceState", SqliteDataType.Integer); se.AddField("CurrentRange", SqliteDataType.Double); se.AddField("CurrentSite", SqliteDataType.Text); se.AddField("Json", SqliteDataType.JsonField); foreach (var ae in transportationDeviceStateEntries) { se.AddRow(RowBuilder.Start("Time", ae.TimeStep) .Add("DateTime", ae.DateTime) .Add("DeviceName", ae.TransportationDeviceName) .Add("User", ae.CurrentUser) .Add("DeviceState", ae.TransportationDeviceState) .Add("NumericDeviceState", (int)ae.TransportationDeviceStateEnum) .Add("CurrentRange", ae.CurrentRange) .Add("CurrentSite", ae.CurrentSite) .Add("Json", JsonConvert.SerializeObject(ae, Formatting.Indented)).ToDictionary()); } if (Srls == null) { throw new LPGException("Data Logger was null."); } Srls.SaveResultEntry(se); }
private static RowCollection MakeRowCollectionForFromTrendVariable([NotNull] MultiyearTrend trend, [NotNull] string variable) { string shortendName = variable; if (shortendName.Length > 30) { shortendName = shortendName.Substring(0, 30); } RowCollection rc = new RowCollection(shortendName, variable); //scenarios var scenarios = trend.Dict.Keys.Select(x => x.DstScenario.FriendlyName).Distinct().ToList(); //values var years = trend.Dict.Keys.Select(x => x.DstYear).Distinct().OrderBy(x => x).ToList(); foreach (var year in years) { if (year == 2017) { var rb = RowBuilder.Start("Year", 2017); var val = trend.Dict[Constants.PresentSlice].GetSliceValueByName(variable); foreach (var scenario in scenarios) { if (scenario == Scenario.Present().FriendlyName) { continue; } rb.Add(scenario, val); } rc.Add(rb); } else { var rb = RowBuilder.Start("Year", year); foreach (var scenario in scenarios) { if (scenario == Scenario.Present().FriendlyName) { continue; } var slicevalues = trend.Dict.Values.FirstOrDefault(x => x.Slice.DstYear == year && x.Slice.DstScenario.FriendlyName == scenario); object o = null; if (slicevalues != null) { o = slicevalues.GetSliceValueByName(variable); } rb.Add(scenario, o); } rc.Add(rb); } } return(rc); }
/// <summary> /// Gets the rows for the join. /// </summary> /// <param name="context"> /// The context. /// </param> /// <param name="multiPartQuery"> /// The multi part query. /// </param> /// <returns> /// The <see cref="IAsyncEnumerable{Row}"/>. /// </returns> internal override IAsyncEnumerable <Row> GetRows(IInternalExecutionContext context, [NotNull] IMultiPartQuery multiPartQuery) { var rowBuilder = new RowBuilder(); //// Build the left part by filtering by parts that contain the fields of the left side. var leftQuery = new MultiPartQuery { Fields = multiPartQuery.Fields.Where(f => this.Left.Aliases.Contains(f.SourceAlias)), FilterExpression = multiPartQuery.FilterExpression.FilterByAliases(this.Left.Aliases), WildcardAliases = multiPartQuery.WildcardAliases.Intersect(this.Left.Aliases).ToArray(), }; //// Create the enumerable. return(context.CreateAsyncEnumerable( async() => { //// Retrieve the records from the left side. var leftData = await this.Left.GetRows(context, leftQuery).MaterializeAsync().ConfigureAwait(false); var rightQuery = new MultiPartQuery { Fields = multiPartQuery.Fields.Where(f => this.Right.Aliases.Contains(f.SourceAlias)), FilterExpression = CrossJoin.RangesToJoinFilter(await this.FindRangesAsync(context, multiPartQuery.FilterExpression, leftData)), WildcardAliases = multiPartQuery.WildcardAliases.Intersect(this.Right.Aliases), }; var rightData = await this.Right.GetRows(context, rightQuery).MaterializeAsync().ConfigureAwait(false); return leftData.CrossJoin(rightData, rowBuilder.CombineRows); }) .Where(multiPartQuery.FilterExpression.GetRowFilter()) .OrderBy(multiPartQuery.OrderByExpressions) .AfterLastElement(count => context.Logger.Verbose($"{this.GetType().Name} returned {count} records."))); }
private void MakeAbregelungWorksheet([NotNull] ScenarioSliceParameters slice, double maxDailyGen, [NotNull] Profile addedProfile) { RowCollection rc = new RowCollection("effect", "Effekt"); for (double i = 0; i < 1; i += 0.01) { double storageSize = maxDailyGen * 2; var minimzed = ProfileSmoothing.FindBestPowerReductionRatio(addedProfile, storageSize, out var _, out var reductionFactor, i); double friendlySize = storageSize / Constants.GWhFactor; Info("Size: " + i + " " + friendlySize + " gwh, Reduction factor: " + reductionFactor); RowBuilder rb = RowBuilder.Start("Size", friendlySize); rb.Add("storage", storageSize); rb.Add("ReductionFactor", reductionFactor); rb.Add("Capping", i); rb.Add("Max Power", minimzed.MaxPower() / 1000); rb.Add("Min Power", minimzed.MinPower() / 1000); rc.Add(rb); } var fnFactor = MakeAndRegisterFullFilename("CappingImpact.xlsx", slice); XlsxDumper.WriteToXlsx(fnFactor, rc); SaveToPublicationDirectory(fnFactor, slice, "4.5"); }
public void collects_computed_parameters() { var rows = new RowBuilder<RowBuilderSpec>() .Add(x => x.DoStuff(Double(21))); Check.That(() => rows[0].Parameters[0] == (object)42); }
/// <summary> /// 添加行 /// </summary> protected void AddRow(TagBuilder tableBuilder, string columns) { var rowBuilder = new RowBuilder(); rowBuilder.AddColumns(columns); tableBuilder.AppendContent(rowBuilder); }
public override void Run(HouseholdKey key, object o) { var objects = (List <LogMessageEntry>)o; SaveableEntry se = new SaveableEntry(key, ResultTableDefinition); se.AddField("Time", SqliteDataType.DateTime); se.AddField("RelativeTime", SqliteDataType.DateTime); se.AddField("Message", SqliteDataType.Text); se.AddField("Severity", SqliteDataType.Text); se.AddField("MyStackTrace", SqliteDataType.Text); foreach (var lme in objects) { se.AddRow(RowBuilder.Start("Time", lme.Time) .Add("Message", lme.Message) .Add("RelativeTime", lme.RelativeTime) .Add("Severity", lme.Severity.ToString()) .Add("MyStackTrace", lme.MyStackTrace) .ToDictionary()); } if (Srls == null) { throw new LPGException("Data Logger was null."); } Srls.SaveResultEntry(se); }
/// <summary> /// 配置循环变量 /// </summary> private void ConfigVariable(RowBuilder builder) { if (_tableId.IsEmpty()) { return; } builder.NgFor($"let row of {_tableId}.data"); }
/// <summary> /// 配置循环变量 /// </summary> private void ConfigVariable(RowBuilder builder) { if (_tableId.IsEmpty()) { return; } builder.ConfigIterationVar(_tableId); }
public InlineKeyboardMarkupBuilder Row(Action <RowBuilder> action) { var rowBuilder = new RowBuilder(); action(rowBuilder); _list.Add(rowBuilder.Build()); return(this); }
/// <summary> /// 添加行编辑属性 /// </summary> private void AddEditRow(RowBuilder rowBuilder) { if (_config.IsEdit == false) { return; } rowBuilder.ConfigEdit(_config.EditTableId, _config.RowId); }
public GridBuilder <T, TResult> AddRow(Action <RowBuilder> action) { var rowBuilder = new RowBuilder(); action(rowBuilder); _list.Add(rowBuilder.Build()); return(this); }
public void collect_inline_lambda() { var rows = new RowBuilder<RowBuilderSpec>() .Add(x => x.Lambda(() => 42)); Check.That(() => rows[0].Parameters[0] is Func<int>); }