Set default value in a DataContract?

How can I set a default value to a DataMember for example for the one shown below:

I want to set ScanDevice="XeroxScan" by default

    [DataMember]
    public string ScanDevice { get; set; }

Answers


I've usually done this with a pattern like this:

[DataContract]
public class MyClass
{
    [DataMember]
    public string ScanDevice { get; set; }

    public MyClass()
    {
        SetDefaults();
    }

    [OnDeserializing]
    private void OnDeserializing(StreamingContext context)
    {
        SetDefaults();
    }

    private void SetDefaults()
    {
        ScanDevice = "XeroxScan";
    }
}

Don't forget the OnDeserializing, as your constructor will not be called during deserialization.


If you want it always to default to XeroxScan, why not do something simple like:

[DataMember(EmitDefaultValue = false)]
public string ScanDevice= "XeroxScan";

Need Your Help

Gitlab prompts for password while push for git user

git ssh gitlab git-shell

I installed gitlab on my servers at linode. All services of gitlab are working fantastic. I am able to login, create users, repos etc.

Get div's offsetTop positions in React

javascript scroll reactjs offset

I am trying to implement a List view in React.