C# で単純な WCF プロジェクトを作成しています。私は DTO User.cs を使用しています:
public UserDTO
{
private EmailType _emailType = EmailType.NotSpecified;
[DataMember]
public EmailType UserEmailType
{
get { return _emailType; }
set { _emailType = value; }
}
}
EmailType.cs には次の値があります。
None = -1,
NoEmail = 0,
All = 1
サービスプロジェクトには、次のメソッドがあります。
public RestResponse CreateNewUser(UserDTO user)
{
try
{
//my code to call BL to create a new user
}
}
しかし、このメソッドを (RESTful URL を使用して) 呼び出すと、CreateNewUser() メソッドが起動されます。user.UserEmailType が、プライベート プロパティのインスタンス化で指定したものではなく、NoEmail (0) に設定されていることに気付きました。UserDTO クラスで別の値に設定したにもかかわらず、.NET REST API フレームワークが 0 に設定しているようです。UserEmailType が -1 ではなく 0 に設定されている理由を教えてください。