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
- SchemaImporterExtensionElement.cs
- XamlParser.cs
- GenericIdentity.cs
- ThreadPool.cs
- HtmlInputPassword.cs
- MergeExecutor.cs
- GridItemPattern.cs
- PersianCalendar.cs
- ButtonAutomationPeer.cs
- AutomationElementCollection.cs
- HtmlTitle.cs
- GeneratedCodeAttribute.cs
- Cloud.cs
- COSERVERINFO.cs
- SettingsBindableAttribute.cs
- CharStorage.cs
- ToolStripDesignerUtils.cs
- HttpBrowserCapabilitiesWrapper.cs
- StringOutput.cs
- SecurityManager.cs
- DynamicDiscoSearcher.cs
- WindowsFormsEditorServiceHelper.cs
- InkCanvas.cs
- ResourceSet.cs
- ConfigurationElement.cs
- SHA512Managed.cs
- DateRangeEvent.cs
- IntSecurity.cs
- Deflater.cs
- UniqueIdentifierService.cs
- SmtpClient.cs
- GridLengthConverter.cs
- DocumentViewerBaseAutomationPeer.cs
- SecurityCriticalDataForSet.cs
- HostingMessageProperty.cs
- TextStore.cs
- ClientUtils.cs
- PerformanceCounterPermission.cs
- Relationship.cs
- RuntimeConfig.cs
- GroupItemAutomationPeer.cs
- shaper.cs
- WebPartDeleteVerb.cs
- RepeaterItem.cs
- WinFormsSecurity.cs
- FixedSOMPageConstructor.cs
- Helpers.cs
- Logging.cs
- WebPartDescriptionCollection.cs
- TemplatePagerField.cs
- OpenTypeLayout.cs
- StickyNote.cs
- PathFigure.cs
- ProtocolElement.cs
- Restrictions.cs
- XmlSchemaAttributeGroupRef.cs
- CompilerGlobalScopeAttribute.cs
- PropertyPushdownHelper.cs
- HtmlInputText.cs
- CLSCompliantAttribute.cs
- PointLightBase.cs
- FrameworkEventSource.cs
- SqlUtil.cs
- HitTestDrawingContextWalker.cs
- OutOfMemoryException.cs
- WebPartDisplayMode.cs
- WsdlParser.cs
- QueryAccessibilityHelpEvent.cs
- PageSettings.cs
- Matrix3D.cs
- TextTreeNode.cs
- ValidatedControlConverter.cs
- ReadOnlyDataSourceView.cs
- Panel.cs
- ProxyHwnd.cs
- SecurityNegotiationException.cs
- ProgressPage.cs
- SafeCryptoHandles.cs
- CalendarDesigner.cs
- ByeOperationCD1AsyncResult.cs
- TextWriter.cs
- MultidimensionalArrayItemReference.cs
- BindableTemplateBuilder.cs
- Selection.cs
- StylusPointDescription.cs
- Column.cs
- XmlMemberMapping.cs
- RectangleConverter.cs
- WinEventTracker.cs
- _Events.cs
- MarkupCompilePass1.cs
- AssertSection.cs
- ToolStripDropDownItem.cs
- ServiceOperationParameter.cs
- ScriptReference.cs
- MarshalByValueComponent.cs
- ClaimComparer.cs
- DBNull.cs
- GraphicsPathIterator.cs
- XPathArrayIterator.cs