48 lines
2.2 KiB
C#
48 lines
2.2 KiB
C#
//------------------------------------------------------------------------------
|
|
// <copyright file="IDesignerSerializationService.cs" company="Microsoft">
|
|
// Copyright (c) Microsoft Corporation. All rights reserved.
|
|
// </copyright>
|
|
//------------------------------------------------------------------------------
|
|
|
|
namespace System.ComponentModel.Design.Serialization {
|
|
using System.Collections;
|
|
using System.ComponentModel;
|
|
|
|
/// <devdoc>
|
|
/// This service provides a way to exchange a collection of objects
|
|
/// for a serializable object that represents them. The returned
|
|
/// object contains live references to objects in the collection.
|
|
/// This returned object can then be passed to any runtime
|
|
/// serialization mechanism. The object itself serializes
|
|
/// components the same way designers write source for them; by picking
|
|
/// them apart property by property. Many objects do not support
|
|
/// runtime serialization because their internal state cannot be
|
|
/// adequately duplicated. All components that support a designer,
|
|
/// however, must support serialization by walking their public
|
|
/// properties, methods and events. This interface uses this
|
|
/// technique to convert a collection of components into a single
|
|
/// opaque object that does support runtime serialization.
|
|
/// </devdoc>
|
|
public interface IDesignerSerializationService {
|
|
|
|
/// <devdoc>
|
|
/// <para>
|
|
/// Deserializes the provided serialization data object and
|
|
/// returns a collection of objects contained within that
|
|
/// data.
|
|
/// </para>
|
|
/// </devdoc>
|
|
ICollection Deserialize(object serializationData);
|
|
|
|
/// <devdoc>
|
|
/// <para>
|
|
/// Serializes the given collection of objects and
|
|
/// stores them in an opaque serialization data object.
|
|
/// The returning object fully supports runtime serialization.
|
|
/// </para>
|
|
/// </devdoc>
|
|
object Serialize(ICollection objects);
|
|
}
|
|
}
|
|
|