e79aa3c0ed
Former-commit-id: a2155e9bd80020e49e72e86c44da02a8ac0e57a4
119 lines
2.8 KiB
C#
119 lines
2.8 KiB
C#
//------------------------------------------------------------
|
|
// Copyright (c) Microsoft Corporation. All rights reserved.
|
|
//------------------------------------------------------------
|
|
|
|
namespace System.Runtime.Serialization
|
|
{
|
|
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Struct, Inherited = false, AllowMultiple = false)]
|
|
public sealed class CollectionDataContractAttribute : Attribute
|
|
{
|
|
string name;
|
|
string ns;
|
|
string itemName;
|
|
string keyName;
|
|
string valueName;
|
|
bool isReference;
|
|
bool isNameSetExplicitly;
|
|
bool isNamespaceSetExplicitly;
|
|
bool isReferenceSetExplicitly;
|
|
bool isItemNameSetExplicitly;
|
|
bool isKeyNameSetExplicitly;
|
|
bool isValueNameSetExplicitly;
|
|
|
|
public CollectionDataContractAttribute()
|
|
{
|
|
}
|
|
|
|
public string Namespace
|
|
{
|
|
get { return ns; }
|
|
set
|
|
{
|
|
ns = value;
|
|
isNamespaceSetExplicitly = true;
|
|
}
|
|
}
|
|
|
|
public bool IsNamespaceSetExplicitly
|
|
{
|
|
get { return isNamespaceSetExplicitly; }
|
|
}
|
|
|
|
public string Name
|
|
{
|
|
get { return name; }
|
|
set
|
|
{
|
|
name = value;
|
|
isNameSetExplicitly = true;
|
|
}
|
|
}
|
|
|
|
public bool IsNameSetExplicitly
|
|
{
|
|
get { return isNameSetExplicitly; }
|
|
}
|
|
|
|
public string ItemName
|
|
{
|
|
get { return itemName; }
|
|
set
|
|
{
|
|
itemName = value;
|
|
isItemNameSetExplicitly = true;
|
|
}
|
|
}
|
|
|
|
public bool IsItemNameSetExplicitly
|
|
{
|
|
get { return isItemNameSetExplicitly; }
|
|
}
|
|
|
|
public string KeyName
|
|
{
|
|
get { return keyName; }
|
|
set
|
|
{
|
|
keyName = value;
|
|
isKeyNameSetExplicitly = true;
|
|
}
|
|
}
|
|
|
|
public bool IsReference
|
|
{
|
|
get { return isReference; }
|
|
set
|
|
{
|
|
isReference = value;
|
|
isReferenceSetExplicitly = true;
|
|
}
|
|
}
|
|
|
|
public bool IsReferenceSetExplicitly
|
|
{
|
|
get { return isReferenceSetExplicitly; }
|
|
}
|
|
|
|
public bool IsKeyNameSetExplicitly
|
|
{
|
|
get { return isKeyNameSetExplicitly; }
|
|
}
|
|
|
|
public string ValueName
|
|
{
|
|
get { return valueName; }
|
|
set
|
|
{
|
|
valueName = value;
|
|
isValueNameSetExplicitly = true;
|
|
}
|
|
}
|
|
|
|
public bool IsValueNameSetExplicitly
|
|
{
|
|
get { return isValueNameSetExplicitly; }
|
|
}
|
|
|
|
}
|
|
}
|