当前位置: 首页>>代码示例>>C#>>正文


C# ExportOptions.HasFlag方法代码示例

本文整理汇总了C#中ExportOptions.HasFlag方法的典型用法代码示例。如果您正苦于以下问题:C# ExportOptions.HasFlag方法的具体用法?C# ExportOptions.HasFlag怎么用?C# ExportOptions.HasFlag使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在ExportOptions的用法示例。


在下文中一共展示了ExportOptions.HasFlag方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: WriteDefaultAttributes

		protected virtual void WriteDefaultAttributes(ElementWriter itemElement, ContentItem item, ExportOptions options)
		{


			if (itemElement == null)
				throw new ArgumentNullException("itemElement");
			if (item == null)
				throw new ArgumentNullException("item");

			string translate="";

			itemElement.WriteAttribute("id", item.ID);
			itemElement.WriteAttribute("name", item.ID.ToString() == item.Name ? "" : item.Name);
			if (item.Parent != null)
			{
				if (item.Parent.ID != 0)
					itemElement.WriteAttribute("parent", item.Parent.ID.ToString());
				else
				{
					itemElement.WriteAttribute("parent", item.Parent.VersionOf.ID.ToString());
					if (item.Parent.GetVersionKey() != null)
						itemElement.WriteAttribute("parentVersionKey", item.Parent.GetVersionKey());
				}
			}
			itemElement.WriteAttribute("title", item.Title);
			itemElement.WriteAttribute("zoneName", item.ZoneName);
			itemElement.WriteAttribute("templateKey", item.TemplateKey);
			if (item.TranslationKey.HasValue)
				itemElement.WriteAttribute("translationKey", item.TranslationKey.Value);
			itemElement.WriteAttribute("state", (int)item.State);
			itemElement.WriteAttribute("created", item.Created);
			itemElement.WriteAttribute("updated", item.Updated);
			itemElement.WriteAttribute("published", item.Published);
			itemElement.WriteAttribute("expires", item.Expires);
			itemElement.WriteAttribute("sortOrder", item.SortOrder);
			itemElement.WriteAttribute("url", parser == null ? item.Url : (string)parser.BuildUrl(item));
			itemElement.WriteAttribute("visible", item.Visible);
			itemElement.WriteAttribute("savedBy", item.SavedBy);
			itemElement.WriteAttribute("typeName", SerializationUtility.GetTypeAndAssemblyName(item.GetContentType()));
			itemElement.WriteAttribute("discriminator", definitions.GetDefinition(item).Discriminator);
			itemElement.WriteAttribute("versionIndex", item.VersionIndex);
			itemElement.WriteAttribute("ancestralTrail", item.AncestralTrail);
			itemElement.WriteAttribute("alteredPermissions", (int)item.AlteredPermissions);
			itemElement.WriteAttribute("childState", (int)item.ChildState);
			if(item.VersionOf.HasValue)
			{
				Debug.Assert(item.VersionOf.ID != null, "item.VersionOf.ID != null");
				itemElement.WriteAttribute("versionOf", item.VersionOf.ID.Value);
			}

			if (item.IsPage)
			{
				if (options.HasFlag(ExportOptions.TranslatePageName))
						translate += "Name,";

				if (options.HasFlag(ExportOptions.TranslatePageTitle))
						translate += "Title,";

				if (options.HasFlag(ExportOptions.TranslatePageURL))
						translate += "URL,";

				if (translate != "")
				{
					if (translate.EndsWith(","))
						translate = translate.Remove(translate.Length-1);
					
						itemElement.WriteAttribute("xmlTranslate", translate);
				}
			}
			else
			{
				//if (options.HasFlag(ExportOptions.TranslatePartName))
				//	translate += "Name,";
					
				if (options.HasFlag(ExportOptions.TranslatePartTitle))
					translate += "Title,";
					
				if (translate != "")
				{
					if (translate.EndsWith(","))
						translate = translate.Remove(translate.Length - 1);

					itemElement.WriteAttribute("xmlTranslate", translate);
				}
			}
		}
开发者ID:andy4711,项目名称:n2cms,代码行数:86,代码来源:ItemXmlWriter.cs


注:本文中的ExportOptions.HasFlag方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。