Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / wpf / src / Framework / System / Windows / Markup / XamlWriter.cs / 1 / XamlWriter.cs
//----------------------------------------------------------------------------
//
// File: XamlWriter.cs
//
// Description:
// base Parser class that parses XML markup into an Avalon Element Tree
//
//
// History:
// 6/06/01: rogerg Created as Parser.cs
// 5/29/03: peterost Ported to wcp as Parser.cs
// 8/04/05: a-neabbu Split Parser into XamlReader and XamlWriter
//
// Copyright (C) 2003 by Microsoft Corporation. All rights reserved.
//
//---------------------------------------------------------------------------
using System;
using System.Xml;
using System.IO;
using System.IO.Packaging;
using System.Windows;
using System.Collections;
using System.Diagnostics;
using System.Reflection;
using System.Windows.Threading;
using MS.Utility;
using System.Security;
using System.Security.Permissions;
using System.Security.Policy;
using System.Text;
using System.ComponentModel.Design.Serialization;
using System.Globalization;
using System.Windows.Markup.Primitives;
using MS.Internal.IO.Packaging;
using MS.Internal.PresentationFramework;
namespace System.Windows.Markup
{
///
/// Parsing class used to create an Windows Presentation Platform Tree
///
public static class XamlWriter
{
#region Public Methods
///
/// Save gets the xml respresentation
/// for the given object instance
///
///
/// Object instance
///
///
/// XAML string representing object instance
///
///
/// We only allow Serialization in partial trust. Although we would throw an exception later anyways,
/// we throw one here so we know where to expect the exception. (
public static string Save(object obj)
{
// Must be in full trust
SecurityHelper.DemandUnmanagedCode();
// Validate input arguments
if (obj == null)
{
throw new ArgumentNullException("obj");
}
// Create TextWriter
StringBuilder sb = new StringBuilder();
TextWriter writer = new StringWriter(sb, XamlSerializerUtil.EnglishUSCulture);
try
{
Save(obj, writer);
}
finally
{
// Close writer
writer.Close();
}
return sb.ToString();
}
///
/// Save writes the xml respresentation
/// for the given object instance using the given writer
///
///
/// Object instance
///
///
/// Text Writer
///
///
/// We only allow Serialization in partial trust. Although we would throw an exception later anyways,
/// we throw one here so we know where to expect the exception. (
public static void Save(object obj, TextWriter writer)
{
// Must be in full trust
SecurityHelper.DemandUnmanagedCode();
// Validate input arguments
if (obj == null)
{
throw new ArgumentNullException("obj");
}
if (writer == null)
{
throw new ArgumentNullException("writer");
}
// Create XmlTextWriter
XmlTextWriter xmlWriter = new XmlTextWriter(writer);
MarkupWriter.SaveAsXml(xmlWriter, obj);
}
///
/// Save writes the xml respresentation
/// for the given object instance to the given stream
///
///
/// Object instance
///
///
/// Stream
///
///
/// We only allow Serialization in partial trust. Although we would throw an exception later anyways,
/// we throw one here so we know where to expect the exception. (
public static void Save(object obj, Stream stream)
{
// Must be in full trust
SecurityHelper.DemandUnmanagedCode();
// Validate input arguments
if (obj == null)
{
throw new ArgumentNullException("obj");
}
if (stream == null)
{
throw new ArgumentNullException("stream");
}
// Create XmlTextWriter
XmlTextWriter xmlWriter = new XmlTextWriter(stream, null);
MarkupWriter.SaveAsXml(xmlWriter, obj);
}
///
/// Save writes the xml respresentation
/// for the given object instance using the given
/// writer. In addition it also allows the designer
/// to participate in this conversion.
///
///
/// Object instance
///
///
/// XmlWriter
///
///
/// We only allow Serialization in partial trust. Although we would throw an exception later anyways,
/// we throw one here so we know where to expect the exception. (
public static void Save(object obj, XmlWriter xmlWriter)
{
// Must be in full trust
SecurityHelper.DemandUnmanagedCode();
// Validate input arguments
if (obj == null)
{
throw new ArgumentNullException("obj");
}
if (xmlWriter == null)
{
throw new ArgumentNullException("xmlWriter");
}
try
{
MarkupWriter.SaveAsXml(xmlWriter, obj);
}
finally
{
xmlWriter.Flush();
}
}
///
/// Save writes the xml respresentation
/// for the given object instance using the
/// given XmlTextWriter embedded in the manager.
///
///
/// Object instance
///
///
/// Serialization Manager
///
///
/// We only allow Serialization in partial trust. Although we would throw an exception later anyways,
/// we throw one here so we know where to expect the exception. (
public static void Save(object obj, XamlDesignerSerializationManager manager)
{
// Must be in full trust
SecurityHelper.DemandUnmanagedCode();
// Validate input arguments
if (obj == null)
{
throw new ArgumentNullException("obj");
}
if (manager == null)
{
throw new ArgumentNullException("manager");
}
MarkupWriter.SaveAsXml(manager.XmlWriter, obj, manager);
}
#endregion Public Methods
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
//----------------------------------------------------------------------------
//
// File: XamlWriter.cs
//
// Description:
// base Parser class that parses XML markup into an Avalon Element Tree
//
//
// History:
// 6/06/01: rogerg Created as Parser.cs
// 5/29/03: peterost Ported to wcp as Parser.cs
// 8/04/05: a-neabbu Split Parser into XamlReader and XamlWriter
//
// Copyright (C) 2003 by Microsoft Corporation. All rights reserved.
//
//---------------------------------------------------------------------------
using System;
using System.Xml;
using System.IO;
using System.IO.Packaging;
using System.Windows;
using System.Collections;
using System.Diagnostics;
using System.Reflection;
using System.Windows.Threading;
using MS.Utility;
using System.Security;
using System.Security.Permissions;
using System.Security.Policy;
using System.Text;
using System.ComponentModel.Design.Serialization;
using System.Globalization;
using System.Windows.Markup.Primitives;
using MS.Internal.IO.Packaging;
using MS.Internal.PresentationFramework;
namespace System.Windows.Markup
{
///
/// Parsing class used to create an Windows Presentation Platform Tree
///
public static class XamlWriter
{
#region Public Methods
///
/// Save gets the xml respresentation
/// for the given object instance
///
///
/// Object instance
///
///
/// XAML string representing object instance
///
///
/// We only allow Serialization in partial trust. Although we would throw an exception later anyways,
/// we throw one here so we know where to expect the exception. (
public static string Save(object obj)
{
// Must be in full trust
SecurityHelper.DemandUnmanagedCode();
// Validate input arguments
if (obj == null)
{
throw new ArgumentNullException("obj");
}
// Create TextWriter
StringBuilder sb = new StringBuilder();
TextWriter writer = new StringWriter(sb, XamlSerializerUtil.EnglishUSCulture);
try
{
Save(obj, writer);
}
finally
{
// Close writer
writer.Close();
}
return sb.ToString();
}
///
/// Save writes the xml respresentation
/// for the given object instance using the given writer
///
///
/// Object instance
///
///
/// Text Writer
///
///
/// We only allow Serialization in partial trust. Although we would throw an exception later anyways,
/// we throw one here so we know where to expect the exception. (
public static void Save(object obj, TextWriter writer)
{
// Must be in full trust
SecurityHelper.DemandUnmanagedCode();
// Validate input arguments
if (obj == null)
{
throw new ArgumentNullException("obj");
}
if (writer == null)
{
throw new ArgumentNullException("writer");
}
// Create XmlTextWriter
XmlTextWriter xmlWriter = new XmlTextWriter(writer);
MarkupWriter.SaveAsXml(xmlWriter, obj);
}
///
/// Save writes the xml respresentation
/// for the given object instance to the given stream
///
///
/// Object instance
///
///
/// Stream
///
///
/// We only allow Serialization in partial trust. Although we would throw an exception later anyways,
/// we throw one here so we know where to expect the exception. (
public static void Save(object obj, Stream stream)
{
// Must be in full trust
SecurityHelper.DemandUnmanagedCode();
// Validate input arguments
if (obj == null)
{
throw new ArgumentNullException("obj");
}
if (stream == null)
{
throw new ArgumentNullException("stream");
}
// Create XmlTextWriter
XmlTextWriter xmlWriter = new XmlTextWriter(stream, null);
MarkupWriter.SaveAsXml(xmlWriter, obj);
}
///
/// Save writes the xml respresentation
/// for the given object instance using the given
/// writer. In addition it also allows the designer
/// to participate in this conversion.
///
///
/// Object instance
///
///
/// XmlWriter
///
///
/// We only allow Serialization in partial trust. Although we would throw an exception later anyways,
/// we throw one here so we know where to expect the exception. (
public static void Save(object obj, XmlWriter xmlWriter)
{
// Must be in full trust
SecurityHelper.DemandUnmanagedCode();
// Validate input arguments
if (obj == null)
{
throw new ArgumentNullException("obj");
}
if (xmlWriter == null)
{
throw new ArgumentNullException("xmlWriter");
}
try
{
MarkupWriter.SaveAsXml(xmlWriter, obj);
}
finally
{
xmlWriter.Flush();
}
}
///
/// Save writes the xml respresentation
/// for the given object instance using the
/// given XmlTextWriter embedded in the manager.
///
///
/// Object instance
///
///
/// Serialization Manager
///
///
/// We only allow Serialization in partial trust. Although we would throw an exception later anyways,
/// we throw one here so we know where to expect the exception. (
public static void Save(object obj, XamlDesignerSerializationManager manager)
{
// Must be in full trust
SecurityHelper.DemandUnmanagedCode();
// Validate input arguments
if (obj == null)
{
throw new ArgumentNullException("obj");
}
if (manager == null)
{
throw new ArgumentNullException("manager");
}
MarkupWriter.SaveAsXml(manager.XmlWriter, obj, manager);
}
#endregion Public Methods
}
}
// 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
- PnrpPermission.cs
- Setter.cs
- ByteAnimation.cs
- DataKey.cs
- FormatterConverter.cs
- AnnotationStore.cs
- DateTimeFormat.cs
- xmlsaver.cs
- RegistrationServices.cs
- DocComment.cs
- XDeferredAxisSource.cs
- StrongTypingException.cs
- Decorator.cs
- RefreshEventArgs.cs
- PeerContact.cs
- MinMaxParagraphWidth.cs
- TypeBuilderInstantiation.cs
- DocumentViewerHelper.cs
- UserPersonalizationStateInfo.cs
- CodeExpressionCollection.cs
- LowerCaseStringConverter.cs
- DCSafeHandle.cs
- _IPv4Address.cs
- DetailsViewInsertedEventArgs.cs
- NetNamedPipeBindingElement.cs
- ColumnCollection.cs
- AudioFileOut.cs
- ManagementObjectCollection.cs
- Closure.cs
- XhtmlBasicTextViewAdapter.cs
- DataAccessor.cs
- Effect.cs
- HttpServerUtilityWrapper.cs
- ListBox.cs
- QilTernary.cs
- RowType.cs
- GridEntryCollection.cs
- DataGridViewRowEventArgs.cs
- MSAAEventDispatcher.cs
- Section.cs
- ControlPager.cs
- ColorPalette.cs
- FileUpload.cs
- UnsupportedPolicyOptionsException.cs
- ConfigurationException.cs
- WebPartChrome.cs
- SystemTcpConnection.cs
- ConditionCollection.cs
- dsa.cs
- _SslSessionsCache.cs
- HealthMonitoringSectionHelper.cs
- DataGridViewCellConverter.cs
- PropertyMapper.cs
- SplitterPanel.cs
- DataGridViewImageCell.cs
- ProcessHost.cs
- AncestorChangedEventArgs.cs
- TryExpression.cs
- ListViewGroupItemCollection.cs
- DCSafeHandle.cs
- SiteMapDesignerDataSourceView.cs
- BehaviorEditorPart.cs
- CollectionType.cs
- ExeContext.cs
- SchemaHelper.cs
- XmlSerializer.cs
- WSDualHttpBindingCollectionElement.cs
- TagPrefixAttribute.cs
- cryptoapiTransform.cs
- RelOps.cs
- Attributes.cs
- AppLevelCompilationSectionCache.cs
- XmlElement.cs
- DynamicValueConverter.cs
- PlacementWorkspace.cs
- WebPartEditorApplyVerb.cs
- DataGridViewRowsAddedEventArgs.cs
- CookieProtection.cs
- FaultContractAttribute.cs
- RecordsAffectedEventArgs.cs
- CustomAssemblyResolver.cs
- ProcessHostConfigUtils.cs
- TypeConverterValueSerializer.cs
- Button.cs
- InlineUIContainer.cs
- OptimalTextSource.cs
- SecurityCriticalDataForSet.cs
- SQLCharsStorage.cs
- SendActivityDesigner.cs
- SchemaDeclBase.cs
- InertiaTranslationBehavior.cs
- ZipIOFileItemStream.cs
- PtsContext.cs
- X509Certificate.cs
- UInt64Converter.cs
- PrePostDescendentsWalker.cs
- SecurityManager.cs
- TypeGeneratedEventArgs.cs
- ProxySimple.cs
- TrackingValidationObjectDictionary.cs