Files
Newtonsoft.Json/Src/Newtonsoft.Json.Tests/Documentation/Examples/DeserializeConstructorHandling.cs
T
James Newton-King 68eacc480b -JSON Schema fixes
-Fixed static values being included with fields serialization
-Examples! (work in progress)
2013-01-23 21:39:54 +13:00

51 lines
1.1 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Text;
namespace Newtonsoft.Json.Tests.Documentation.Examples
{
public class DeserializeConstructorHandling
{
public class Website
{
public string Url { get; set; }
private Website()
{
}
public Website(Website website)
{
if (website == null)
throw new ArgumentNullException("website");
Url = website.Url;
}
}
public void Example()
{
string json = @"{""Url"":""http://www.google.com""}";
try
{
JsonConvert.DeserializeObject<Website>(json);
}
catch (TargetInvocationException)
{
// Value cannot be null.
// Parameter name: website
}
Website website = JsonConvert.DeserializeObject<Website>(json, new JsonSerializerSettings
{
ConstructorHandling = ConstructorHandling.AllowNonPublicDefaultConstructor
});
Console.WriteLine(website.Url);
// http://www.google.com
}
}
}