Skip to content

Instantly share code, notes, and snippets.

@AlexShkor
Created April 12, 2013 10:33
Show Gist options
  • Save AlexShkor/5371130 to your computer and use it in GitHub Desktop.
Save AlexShkor/5371130 to your computer and use it in GitHub Desktop.
correct SignalRContractResolver with CamelCasePropertyNamesContractResolver
var settings = new JsonSerializerSettings();
settings.ContractResolver = new SignalRContractResolver();
var serializer = new JsonNetSerializer(settings);
GlobalHost.DependencyResolver.Register(typeof (IJsonSerializer), () => serializer);
public class SignalRContractResolver : IContractResolver
{
private readonly Assembly _assembly;
private readonly IContractResolver _camelCaseContractResolver;
private readonly IContractResolver _defaultContractSerializer;
public SignalRContractResolver()
{
_defaultContractSerializer = new DefaultContractResolver();
_camelCaseContractResolver = new CamelCasePropertyNamesContractResolver();
_assembly = typeof (Connection).Assembly;
}
#region IContractResolver Members
public JsonContract ResolveContract(Type type)
{
if (type.Assembly.Equals(_assembly))
return _defaultContractSerializer.ResolveContract(type);
return _camelCaseContractResolver.ResolveContract(type);
}
#endregion
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment