39 lines
1.3 KiB
C#
39 lines
1.3 KiB
C#
|
//-----------------------------------------------------------------------------
|
||
|
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||
|
//-----------------------------------------------------------------------------
|
||
|
namespace System.ServiceModel
|
||
|
{
|
||
|
using System;
|
||
|
using System.ServiceModel.Channels;
|
||
|
|
||
|
[AttributeUsage(ServiceModelAttributeTargets.Parameter, Inherited = false)]
|
||
|
public sealed class MessageParameterAttribute : Attribute
|
||
|
{
|
||
|
string name;
|
||
|
bool isNameSetExplicit;
|
||
|
internal const string NamePropertyName = "Name";
|
||
|
public string Name
|
||
|
{
|
||
|
get { return name; }
|
||
|
set
|
||
|
{
|
||
|
if (value == null)
|
||
|
{
|
||
|
throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("value");
|
||
|
}
|
||
|
if (value == string.Empty)
|
||
|
{
|
||
|
throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentOutOfRangeException("value",
|
||
|
SR.GetString(SR.SFxNameCannotBeEmpty)));
|
||
|
}
|
||
|
name = value; isNameSetExplicit = true;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
internal bool IsNameSetExplicit
|
||
|
{
|
||
|
get { return isNameSetExplicit; }
|
||
|
}
|
||
|
}
|
||
|
}
|