public override void LoadTag(string markup) { base.LoadTag(markup); if (this.HasAttributes()) { this.Lang = GetAttribute("lang"); this.Country = GetAttribute("country"); this.MessageSrc = GetAttribute("messages"); UpdateCultureCode(); } if (MyMessageBundle.Messages.HasValues()) { MyDataContext.AddResourceBundle(MyMessageBundle.Messages); } }
/// <summary> /// Loads an external messagebundle /// </summary> /// <param name="messageBundle"></param> public void LoadMessageBundle(string messageBundle) { if (string.IsNullOrEmpty(messageBundle)) { return; } // Trim before loading. // We don't care about offsets in this case, so trim is OK string testStr = "<messagebundle"; if (!messageBundle.StartsWith(testStr, StringComparison.InvariantCultureIgnoreCase)) { int pos = messageBundle.IndexOf(testStr); if (pos == -1) { return; } else { messageBundle = messageBundle.Substring(pos); } } MyMessageBundle.LoadTag(messageBundle); if (MyMessageBundle.Messages.HasValues()) { try { MyDataContext.AddResourceBundle(MyMessageBundle.Messages); } catch (Exception ex) { if (MyRootMaster is GadgetMaster) { GadgetMaster errRoot = (GadgetMaster)MyRootMaster; errRoot.Errors.MessageBundleErrors.Add(new MessageBundleItemError("Error adding bundle")); } } } }