async Task ExecuteLoadItemsCommand() { try { Stores.Clear(); var palletMaster = await DataStore.GetPalletMaterDataAsync(); foreach (var item in palletMaster.Stores) { Stores.Add(item); } Status.Clear(); foreach (var item in palletMaster.Status) { Status.Add(item); } Categories.Clear(); foreach (var item in palletMaster.Categories) { Categories.Add(item); } Wrappers.Clear(); foreach (var item in palletMaster.Wrappers) { Wrappers.Add(item); } Shippers.Clear(); foreach (var item in palletMaster.Shippers) { Shippers.Add(item); } Suppliers.Clear(); foreach (var item in palletMaster.Suppliers) { Suppliers.Add(item); } Builders.Clear(); foreach (var item in palletMaster.Builders) { Builders.Add(item); } PalletTypes.Clear(); foreach (var item in palletMaster.PalletTypes) { PalletTypes.Add(item); } } catch (Exception ex) { Debug.WriteLine(ex); } }
protected void SetDefaults(bool clear = true) { if (clear) { ValueTranslators.Clear(); Builders.Clear(); AppendCheckers.Clear(); PreAppendChecker = null; } // Translates string properties to string... duh! ValueTranslators.Add(typeof(string), (a, t, v) => v.ToString()); // Translates enum properties to string by using the name representing the enum value. ValueTranslators.Add(typeof(Enum), (a, t, v) => { string name = Enum.GetName(t, v); return(a.EnumCase == EnumCasePolicy.LOWERCASE ? name.ToLower() : a.EnumCase == EnumCasePolicy.UPPERCASE ? name.ToUpper() : name); }); // Only append flag if value isn't null. This is checked before any other registered append checkers. PreAppendChecker = (a, t, v) => v != null; // Only append boolean flags if the value is true. AppendCheckers.Add(typeof(bool), (a, t, v) => (bool)v); // Add bool flags if value isnt false. // Custom builder for string -> string dictionaries repeatedly adds flag with key-value pair seperated by colon. Builders.Add(typeof(Dictionary <string, string>), (a, t, v) => { string builtFlag = string.Empty; int count = 0; Dictionary <string, string> dic = (Dictionary <string, string>)v; foreach (KeyValuePair <string, string> entry in dic) { string value = string.Format("{0}:{1}", entry.Key, entry.Value); value = QuoteFlagValue(a.QuotePolicy, value); builtFlag += string.Format("{0}{1} ", (dic.Count > 1 && count > 0) ? (a.Flag + " ") : string.Empty, value); count++; } if (dic.Count > 0) { builtFlag = builtFlag.Remove(builtFlag.Length - 1, 1); } return(a.Template.Replace("{flag}", a.Flag).Replace("{value}", builtFlag)); }); }
public void When_there_is_no_builder_for_an_aggregate() { Builders.Clear(); Should.Throw <BuilderNotFoundException>(() => Session.LoadAggregate <Toggle>(ToggleID.CreateNew())); }
/// <summary> /// Sets this <see cref="CommandLineBuilder"/> to its default settings. /// </summary> public virtual void SetDefaults() { ValueTranslators.Clear(); Builders.Clear(); SerializationCheckers.Clear(); ArgumentSeperator = " "; Seperator = " "; // Only serialize flag if value isn't null. This is called before any other registered serialization checkers. CommonSerializationChecker = (a, t, v) => v != null; // Only serialize boolean flags if the value is true. SerializationCheckers.Add(typeof(bool), (a, t, v) => (bool)v); // Serialize boolean flags if value isn't false. // Only serialize dictionaries if they contain items. SerializationCheckers.Add(typeof(Dictionary <string, string>), (a, t, v) => ((Dictionary <string, string>)v).Count > 0); // Translates string properties to string... duh! ValueTranslators.Add(typeof(string), (a, t, v) => v.ToString()); // Translate DateTime objects to the format of "yyyyMMdd". ValueTranslators.Add(typeof(DateTime), (a, t, v) => ((DateTime)v).ToString("yyyyMMdd")); // Translates enum properties to string by using the name representing the enum value. ValueTranslators.Add(typeof(Enum), (a, t, v) => { string name = Enum.GetName(t, v); switch (a.EnumCase) { case EnumCasePolicy.Lowercase: return(name.ToLower()); case EnumCasePolicy.Uppercase: return(name.ToUpper()); case EnumCasePolicy.Default: default: return(name); } }); // Custom builder for string -> string dictionaries repeatedly adds flag with key-value pair seperated by colon. Builders.Add(typeof(Dictionary <string, string>), (argument, type, value) => { Dictionary <string, string> dictionary = (Dictionary <string, string>)value; if (dictionary.Count == 0) { return(null); // Returning null for a builder, or value translator ignores this argument. } StringBuilder sb = new StringBuilder(); foreach (KeyValuePair <string, string> entry in dictionary) { sb.Append(BuildFlag(argument, string.Format("{0}:{1}", entry.Key, entry.Value))).Append(ArgumentSeperator); } if (dictionary.Count > 1) { sb.Remove(sb.Length - ArgumentSeperator.Length, ArgumentSeperator.Length); } return(sb.ToString()); }); }