/// <summary> /// 更新枚举 /// </summary> /// <param name="dataEntity"></param> public void Update(EnumEntityDev enumEntity) { Debug.Assert(enumEntity != null, "enumEntity 为 null"); if (enumEntity == null) { return; } //更新索引信息 XElement element = _indexXml.XPathSelectElement(String.Format(XPATH_Index_SelectDictionary, enumEntity.Id)); Debug.Assert(element != null, "更新枚举索引时未找到指定枚举的索引记录"); if (element != null) { element.ReplaceWith(ArchiveHelper.GetEntityArchiveIndex(enumEntity)); SaveIndexFile(); string xml = enumEntity.ToXml(); XElement xElement = XElement.Parse(xml); //更新数据实体文件 _packageService.Current.AddFileContent(xml, Path.Combine(Constant.PACKAGE_DICTIONARY_FOLDER, enumEntity.Id)); _cachingService.Add(enumEntity.Id, xElement); //发布事件 EnumEventArgs args = new EnumEventArgs(enumEntity); _eventAggregator.GetEvent <EnumUpdatedEvent>().Publish(args); } }
/// <summary> /// 添加一个枚举 /// </summary> /// <param name="enumEntity"></param> public void Add(EnumEntityDev enumEntity) { Debug.Assert(enumEntity != null, "enumEntity 为 null"); if (enumEntity == null) { return; } //添加索引信息 _indexXml.XPathSelectElement(XPATH_Index_Dictionary).Add(ArchiveHelper.GetEntityArchiveIndex(enumEntity)); SaveIndexFile(); string xml = enumEntity.ToXml(); XElement xElement = XElement.Parse(xml); //添加数据实体文件 _packageService.Current.AddFileContent(xml, Path.Combine(Constant.PACKAGE_DICTIONARY_FOLDER, enumEntity.Id)); _cachingService.Add(enumEntity.Id, xElement); //发布事件 EnumEventArgs args = new EnumEventArgs(enumEntity); _eventAggregator.GetEvent <EnumAddedEvent>().Publish(args); }