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
- InstanceDescriptor.cs
- BrowserTree.cs
- BinaryCommonClasses.cs
- InternalMappingException.cs
- StringAnimationBase.cs
- ArcSegment.cs
- HTMLTextWriter.cs
- ComponentResourceKey.cs
- COM2PictureConverter.cs
- Triplet.cs
- DocumentViewerBase.cs
- WebUtil.cs
- CompilerCollection.cs
- DocumentXPathNavigator.cs
- PeerEndPoint.cs
- UserControlCodeDomTreeGenerator.cs
- Filter.cs
- FastEncoderWindow.cs
- IncrementalReadDecoders.cs
- OraclePermissionAttribute.cs
- CapabilitiesSection.cs
- ColorConverter.cs
- StringSource.cs
- CodeTypeOfExpression.cs
- StreamGeometry.cs
- DataError.cs
- GlyphRun.cs
- EntityAdapter.cs
- TextTreePropertyUndoUnit.cs
- StubHelpers.cs
- Dump.cs
- SiteMapNodeItem.cs
- Listbox.cs
- DataSourceCache.cs
- SyndicationContent.cs
- DrawingBrush.cs
- TextServicesHost.cs
- CodeTypeReferenceCollection.cs
- CapabilitiesRule.cs
- PropertyGroupDescription.cs
- OpCodes.cs
- httpapplicationstate.cs
- DataSourceControl.cs
- TerminatingOperationBehavior.cs
- HttpCapabilitiesSectionHandler.cs
- JoinCqlBlock.cs
- EditableTreeList.cs
- DomainUpDown.cs
- EntityStoreSchemaGenerator.cs
- WebPartManager.cs
- ExtendLockAsyncResult.cs
- DescriptionAttribute.cs
- SymLanguageType.cs
- RightsManagementEncryptionTransform.cs
- HtmlTableCell.cs
- PropertyMapper.cs
- DnsEndpointIdentity.cs
- SqlWebEventProvider.cs
- ArrayConverter.cs
- TreeNodeCollection.cs
- WebPartHeaderCloseVerb.cs
- StateRuntime.cs
- EntityDataReader.cs
- Pens.cs
- ExpressionBuilderContext.cs
- TransactionBridge.cs
- ComPlusTypeLoader.cs
- GridViewUpdateEventArgs.cs
- Instrumentation.cs
- InternalRelationshipCollection.cs
- FrameworkElementAutomationPeer.cs
- TabItemAutomationPeer.cs
- XmlDownloadManager.cs
- SendMailErrorEventArgs.cs
- WindowsAltTab.cs
- SqlRowUpdatingEvent.cs
- ZoneLinkButton.cs
- CompModSwitches.cs
- SrgsElementFactoryCompiler.cs
- WindowsFormsLinkLabel.cs
- ResourceContainer.cs
- ContextInformation.cs
- RadioButtonList.cs
- BulletedList.cs
- RenderOptions.cs
- ApplicationDirectoryMembershipCondition.cs
- DoubleStorage.cs
- DataTable.cs
- FlowSwitchDesigner.xaml.cs
- ConfigurationElementCollection.cs
- HttpProfileBase.cs
- IntPtr.cs
- ComboBox.cs
- xsdvalidator.cs
- Inline.cs
- UseManagedPresentationBindingElementImporter.cs
- ThreadSafeList.cs
- PrintDialog.cs
- SecurityUtils.cs
- EnumCodeDomSerializer.cs