title: Newtonsoft Json How can I have two serialization patterns?
body: <p>I can choose an object to serialize with code like below, and I can ignore the object without [DataMember] on serialization.</p>
  <pre><code>
  namespace MyProject
  {
      [DataContract]
      public class MyClass
      {
          public string aaa { get; set; }
          [DataMember] public string bbb { get; set; }
          [DataMember] public string ccc { get; set; }
      }
  }
  </code></pre>
  <pre><code>String  str = JsonConvert.SerializeObject((MyClass)jsonClass);
  
  // &quot;{\&quot;bbb\&quot;:\&quot;1111\&quot;,\&quot;ccc\&quot;:\&quot;222\&quot;}&quot;
  </code></pre>
  <p>Then, I want to switch two serialization patterns. shown as below</p>
  <pre><code>
  namespace MyProject
  {
      [DataContract]
      public class MyClass
      {
          [DataMember_pattern1] public string aaa { get; set; }
          [DataMember_pattern1, DataMember_pattern2] public string bbb { get; set; }
          [DataMember_pattern2] public string ccc { get; set; }
      }
  }
  
  // output I need
  // serialized in pattern1
  // &quot;{\&quot;aaa\&quot;:\&quot;0000\&quot;, \&quot;bbb\&quot;:\&quot;1111\&quot;}&quot;
  
  // serialized in pattern2
  // &quot;{\&quot;bbb\&quot;:\&quot;1111\&quot;,\&quot;ccc\&quot;:\&quot;222\&quot;}&quot;
  </code></pre>
  <p>and I want to do this on deserialization too.
  Is this possible?</p>