Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / NetFx35 / System.ServiceModel.Web / System / ServiceModel / Syndication / SyndicationContent.cs / 1 / SyndicationContent.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.ServiceModel.Syndication { using System; using System.Collections.Generic; using System.Text; using System.Xml; using System.Xml.Serialization; using System.Runtime.Serialization; using System.Diagnostics.CodeAnalysis; public abstract class SyndicationContent { DictionaryattributeExtensions; protected SyndicationContent() { } protected SyndicationContent(SyndicationContent source) { CopyAttributeExtensions(source); } public Dictionary AttributeExtensions { get { if (this.attributeExtensions == null) { this.attributeExtensions = new Dictionary (); } return this.attributeExtensions; } } public abstract string Type { get; } public static TextSyndicationContent CreateHtmlContent(string content) { return new TextSyndicationContent(content, TextSyndicationContentKind.Html); } public static TextSyndicationContent CreatePlaintextContent(string content) { return new TextSyndicationContent(content); } public static UrlSyndicationContent CreateUrlContent(Uri url, string mediaType) { return new UrlSyndicationContent(url, mediaType); } public static TextSyndicationContent CreateXhtmlContent(string content) { return new TextSyndicationContent(content, TextSyndicationContentKind.XHtml); } public static XmlSyndicationContent CreateXmlContent(object dataContractObject) { return new XmlSyndicationContent(Atom10Constants.XmlMediaType, dataContractObject, (DataContractSerializer) null); } public static XmlSyndicationContent CreateXmlContent(object dataContractObject, XmlObjectSerializer dataContractSerializer) { return new XmlSyndicationContent(Atom10Constants.XmlMediaType, dataContractObject, dataContractSerializer); } public static XmlSyndicationContent CreateXmlContent(XmlReader xmlReader) { return new XmlSyndicationContent(xmlReader); } public static XmlSyndicationContent CreateXmlContent(object xmlSerializerObject, XmlSerializer serializer) { return new XmlSyndicationContent(Atom10Constants.XmlMediaType, xmlSerializerObject, serializer); } public abstract SyndicationContent Clone(); public void WriteTo(XmlWriter writer, string outerElementName, string outerElementNamespace) { if (writer == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("writer"); } if (string.IsNullOrEmpty(outerElementName)) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgument(SR2.GetString(SR2.OuterElementNameNotSpecified)); } writer.WriteStartElement(outerElementName, outerElementNamespace); writer.WriteAttributeString(Atom10Constants.TypeTag, string.Empty, this.Type); if (this.attributeExtensions != null) { foreach (XmlQualifiedName key in this.attributeExtensions.Keys) { if (key.Name == Atom10Constants.TypeTag && key.Namespace == string.Empty) { continue; } string attrValue; if (this.attributeExtensions.TryGetValue(key, out attrValue)) { writer.WriteAttributeString(key.Name, key.Namespace, attrValue); } } } WriteContentsTo(writer); writer.WriteEndElement(); } internal void CopyAttributeExtensions(SyndicationContent source) { if (source == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("source"); } if (source.attributeExtensions != null) { foreach (XmlQualifiedName key in source.attributeExtensions.Keys) { this.AttributeExtensions.Add(key, source.attributeExtensions[key]); } } } protected abstract void WriteContentsTo(XmlWriter writer); } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- HighlightVisual.cs
- UnsafeNativeMethods.cs
- DataServiceQueryOfT.cs
- PenThreadPool.cs
- ListControlStringCollectionEditor.cs
- DrawingGroup.cs
- LinkUtilities.cs
- IgnoreFlushAndCloseStream.cs
- Point3D.cs
- Stack.cs
- AssemblyCache.cs
- DataGridViewRowHeaderCell.cs
- Char.cs
- EntitySqlQueryCacheEntry.cs
- WindowsAuthenticationModule.cs
- IApplicationTrustManager.cs
- ToolStripItemGlyph.cs
- WasHostedComPlusFactory.cs
- MULTI_QI.cs
- HtmlTableCell.cs
- _Win32.cs
- AssemblyCollection.cs
- Evaluator.cs
- CodeMethodMap.cs
- ListDataHelper.cs
- AxWrapperGen.cs
- SmiXetterAccessMap.cs
- MemberAssignment.cs
- UpdateCompiler.cs
- RegularExpressionValidator.cs
- XmlNamespaceManager.cs
- PageThemeCodeDomTreeGenerator.cs
- TreeChangeInfo.cs
- Size.cs
- SystemThemeKey.cs
- TargetControlTypeAttribute.cs
- ObjectDesignerDataSourceView.cs
- StringPropertyBuilder.cs
- COAUTHINFO.cs
- StreamGeometryContext.cs
- LiteralControl.cs
- MenuAdapter.cs
- MultiBinding.cs
- ClientScriptManagerWrapper.cs
- Buffer.cs
- MetadataHelper.cs
- LineBreak.cs
- SHA1Managed.cs
- Attributes.cs
- DataGridClipboardCellContent.cs
- AutomationElement.cs
- PerfCounters.cs
- SoapTypeAttribute.cs
- autovalidator.cs
- XmlImplementation.cs
- XXXInfos.cs
- ClickablePoint.cs
- XPathScanner.cs
- AuthorizationRule.cs
- HeaderedItemsControl.cs
- CodeVariableDeclarationStatement.cs
- InteropAutomationProvider.cs
- AssociatedControlConverter.cs
- InvalidDataContractException.cs
- StringUtil.cs
- GenericPrincipal.cs
- Pair.cs
- FilterElement.cs
- ListSortDescription.cs
- Span.cs
- ObjectStateEntry.cs
- SqlNotificationRequest.cs
- ValidatorCompatibilityHelper.cs
- ExtenderProvidedPropertyAttribute.cs
- NavigationWindowAutomationPeer.cs
- GeneralTransformGroup.cs
- CrossContextChannel.cs
- PasswordTextNavigator.cs
- __FastResourceComparer.cs
- DataSourceViewSchemaConverter.cs
- Polygon.cs
- MsmqBindingFilter.cs
- TableLayoutColumnStyleCollection.cs
- IndependentAnimationStorage.cs
- BinaryFormatterWriter.cs
- InstanceDataCollection.cs
- Helper.cs
- CodeIndexerExpression.cs
- InstanceOwner.cs
- CacheForPrimitiveTypes.cs
- Compiler.cs
- ControllableStoryboardAction.cs
- DataGridViewRowCancelEventArgs.cs
- DataViewManagerListItemTypeDescriptor.cs
- AsynchronousChannelMergeEnumerator.cs
- BuildResult.cs
- XmlSiteMapProvider.cs
- CellTreeNode.cs
- DataGridBeginningEditEventArgs.cs
- HyperLinkStyle.cs