public static MaterialCommodityData EnsurePresent(string cat, string fdname) // By FDNAME { if (!cachelist.ContainsKey(fdname.ToLowerInvariant())) { MaterialCommodityData mcdb = new MaterialCommodityData(cat, fdname.SplitCapsWordFull(), fdname, "Unknown", "", Color.Green, false); mcdb.SetCache(); System.Diagnostics.Debug.WriteLine("Material not present: " + cat + "," + fdname); } return(cachelist[fdname.ToLowerInvariant()]); }
private static bool AddEntry(string catname, Color colour, string aliasname, string typeofit, string shortname, string fdName, bool comrare = false) { System.Diagnostics.Debug.Assert(!shortname.HasChars() || cachelist.Values.ToList().Find(x => x.Shortname.Equals(shortname, StringComparison.InvariantCultureIgnoreCase)) == null, "ShortName repeat " + aliasname + " " + shortname); System.Diagnostics.Debug.Assert(cachelist.ContainsKey(fdName) == false, "Repeated entry " + fdName); string fdn = (fdName.Length > 0) ? fdName.ToLowerInvariant() : FDNameCnv(aliasname); // always lower case fdname MaterialCommodityData mc = new MaterialCommodityData(catname, aliasname, fdn, typeofit, shortname, colour, comrare); mc.SetCache(); return(true); }