protected internal virtual IType DetermineType(string paramName, object paramValue, IType defaultType) { IType type = parameterMetadata.GetNamedParameterExpectedType(paramName) ?? defaultType; return(type); }