Newtonsoft.Json.Serialization.DefaultContractResolver.GetClrTypeFullName C# (CSharp) Method

GetClrTypeFullName() static private method

static private GetClrTypeFullName ( Type type ) : string
type System.Type
return string
    internal static string GetClrTypeFullName(Type type)
    {
      if (type.IsGenericTypeDefinition || !type.ContainsGenericParameters)
        return type.FullName;

      return string.Format(CultureInfo.InvariantCulture, "{0}.{1}", new object[] { type.Namespace, type.Name });
    }

Usage Example

Ejemplo n.º 1
0
 private static bool IsValidCallback(MethodInfo method, ParameterInfo[] parameters, Type attributeType, MethodInfo currentCallback, ref Type prevAttributeType)
 {
     if (!method.IsDefined(attributeType, false))
     {
         return(false);
     }
     if (currentCallback != null)
     {
         throw new JsonException("Invalid attribute. Both '{0}' and '{1}' in type '{2}' have '{3}'.".FormatWith(CultureInfo.InvariantCulture, new object[]
         {
             method,
             currentCallback,
             DefaultContractResolver.GetClrTypeFullName(method.DeclaringType),
             attributeType
         }));
     }
     if (prevAttributeType != null)
     {
         throw new JsonException("Invalid Callback. Method '{3}' in type '{2}' has both '{0}' and '{1}'.".FormatWith(CultureInfo.InvariantCulture, new object[]
         {
             prevAttributeType,
             attributeType,
             DefaultContractResolver.GetClrTypeFullName(method.DeclaringType),
             method
         }));
     }
     if (method.IsVirtual)
     {
         throw new JsonException("Virtual Method '{0}' of type '{1}' cannot be marked with '{2}' attribute.".FormatWith(CultureInfo.InvariantCulture, method, DefaultContractResolver.GetClrTypeFullName(method.DeclaringType), attributeType));
     }
     if (method.ReturnType != typeof(void))
     {
         throw new JsonException("Serialization Callback '{1}' in type '{0}' must return void.".FormatWith(CultureInfo.InvariantCulture, DefaultContractResolver.GetClrTypeFullName(method.DeclaringType), method));
     }
     if (attributeType == typeof(OnErrorAttribute))
     {
         if (parameters == null || parameters.Length != 2 || parameters[0].ParameterType != typeof(StreamingContext) || parameters[1].ParameterType != typeof(ErrorContext))
         {
             throw new JsonException("Serialization Error Callback '{1}' in type '{0}' must have two parameters of type '{2}' and '{3}'.".FormatWith(CultureInfo.InvariantCulture, new object[]
             {
                 DefaultContractResolver.GetClrTypeFullName(method.DeclaringType),
                 method,
                 typeof(StreamingContext),
                 typeof(ErrorContext)
             }));
         }
     }
     else if (parameters == null || parameters.Length != 1 || parameters[0].ParameterType != typeof(StreamingContext))
     {
         throw new JsonException("Serialization Callback '{1}' in type '{0}' must have a single parameter of type '{2}'.".FormatWith(CultureInfo.InvariantCulture, DefaultContractResolver.GetClrTypeFullName(method.DeclaringType), method, typeof(StreamingContext)));
     }
     prevAttributeType = attributeType;
     return(true);
 }
All Usage Examples Of Newtonsoft.Json.Serialization.DefaultContractResolver::GetClrTypeFullName