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
- DiffuseMaterial.cs
- MailAddress.cs
- Image.cs
- XamlWrappingReader.cs
- XmlNamespaceMappingCollection.cs
- UInt32Converter.cs
- URLEditor.cs
- RefreshEventArgs.cs
- EventSinkHelperWriter.cs
- DataGridViewTopRowAccessibleObject.cs
- BindingFormattingDialog.cs
- TemplateLookupAction.cs
- RecognizerBase.cs
- WarningException.cs
- PolyLineSegment.cs
- WebPartConnection.cs
- PageWrapper.cs
- SerializationFieldInfo.cs
- PropertyChangeTracker.cs
- DocumentApplicationJournalEntry.cs
- XmlSchemaImport.cs
- Encoder.cs
- ExpressionPrefixAttribute.cs
- CallSiteBinder.cs
- ImmutableCollection.cs
- ControlSerializer.cs
- MulticastOption.cs
- SemanticBasicElement.cs
- BaseValidator.cs
- ApplicationSecurityInfo.cs
- MediaScriptCommandRoutedEventArgs.cs
- NamedElement.cs
- CompiledQuery.cs
- RowSpanVector.cs
- Calendar.cs
- BuildProviderUtils.cs
- Button.cs
- DoubleLink.cs
- GCHandleCookieTable.cs
- TextureBrush.cs
- __Error.cs
- ListViewItemMouseHoverEvent.cs
- MobileUITypeEditor.cs
- ArrayElementGridEntry.cs
- AssertFilter.cs
- SqlRemoveConstantOrderBy.cs
- ConnectionStringSettings.cs
- XmlSerializableReader.cs
- NetSectionGroup.cs
- FormViewPageEventArgs.cs
- CatalogPartChrome.cs
- DesignBinding.cs
- filewebresponse.cs
- InteropBitmapSource.cs
- FigureHelper.cs
- Module.cs
- XmlSchemaInferenceException.cs
- IndexExpression.cs
- controlskin.cs
- TCPClient.cs
- BackgroundFormatInfo.cs
- InfoCardCryptoHelper.cs
- TreeViewCancelEvent.cs
- VerificationAttribute.cs
- RefreshEventArgs.cs
- MessageQueueCriteria.cs
- EntityDataSourceSelectedEventArgs.cs
- HashMembershipCondition.cs
- DynamicDocumentPaginator.cs
- PreloadedPackages.cs
- SqlClientWrapperSmiStreamChars.cs
- NetPeerTcpBindingElement.cs
- SyndicationElementExtensionCollection.cs
- FileCodeGroup.cs
- ApplyHostConfigurationBehavior.cs
- XmlParserContext.cs
- DataColumn.cs
- MergeFilterQuery.cs
- Opcode.cs
- SecurityContext.cs
- WebPartsPersonalizationAuthorization.cs
- SmiRecordBuffer.cs
- StrokeCollection.cs
- WebPartDeleteVerb.cs
- SizeConverter.cs
- SafeNativeMethods.cs
- TreeChangeInfo.cs
- BooleanSwitch.cs
- WebHttpElement.cs
- Sequence.cs
- InternalConfigRoot.cs
- StyleSheet.cs
- SchemaObjectWriter.cs
- SelectionItemProviderWrapper.cs
- Blend.cs
- CompositeFontInfo.cs
- RadioButton.cs
- StylusPlugin.cs
- FixedPageStructure.cs
- EntityParameter.cs