title: changing null to empty in JsonSerializerSettings
body: <p>I'm using azure cache as caching provider in my asp.net mvc project with c# 
  and I use this method to serialize my data with             JsonSerializerSettings</p>
  
  <pre><code>public static JsonSerializerSettings GetDefaultSettings()
          {
              JsonSerializerSettings settings = new JsonSerializerSettings
              {
                  TypeNameHandling = TypeNameHandling.All,
                  TypeNameAssemblyFormat = FormatterAssemblyStyle.Simple,
                  ReferenceLoopHandling = ReferenceLoopHandling.Ignore,
                  NullValueHandling = NullValueHandling.Ignore,
                  Binder = new TypeManagerSerializationBinder(),
                  ContractResolver = new PrivateSetterContractResolver()
              };
              settings.Converters.Add(new IsoDateTimeConverter { DateTimeStyles = DateTimeStyles.RoundtripKind });
              return settings;
          }
  </code></pre>
  
  <p>my object is like this</p>
  
  <pre><code>{
     "Name": "Bad Boys III",
     "Description": "It's no Bad Boys",
     "Classification": null,
     "Studio": null,
     "ReleaseCountries": null
   }
  </code></pre>
  
  <p>everything is Ok but I want to return "{}" instead of null for null columns.</p>
  
  <pre><code>{
     "Name": "Bad Boys III",
     "Description": "It's no Bad Boys",
     "Classification": {},
     "Studio": {},
     "ReleaseCountries": {}
   }
  </code></pre>
  
  <p>is there any config to do that for me?</p>