• Jon Skeet's avatar
    Make ToString() valid without a type registry · aabc6c41
    Jon Skeet authored
    This addresses issue #1008, by creating a JsonFormatter which is private and only different
    to JsonFormatter.Default in terms of reference equality.
    
    Other plausible designs:
    
    - The same, but expose the diagnostic-only formatter
    - Add something to settings to say "I don't have a type registry at all"
    - Change the behaviour of JsonFormatter.Default (bad idea IMO, as we really *don't* want the result of this used as regular JSON to be parsed)
    
    Note that just trying to find a separate fix to issue #933 and using that to override Any.ToString() differently wouldn't work for messages that *contain* an Any.
    
    Generated code changes follow in the next commit.
    aabc6c41
JsonFormatter.cs 37.6 KB