Cómo ignorar la verificación de certificado cuando ssl

Estoy tratando de encontrar una manera de ignorar la verificación del certificado cuando solicito un recurso Https, hasta ahora, encontré un artículo útil en Internet.

Pero todavía tengo algún problema. Por favor revise mi código. Simplemente no entiendo lo que hace el códigoServicePointManager.ServerCertificateValidationCallback media.

¿Cuándo se llamará este método de delegado? Y una pregunta más, ¿en qué lugar debo escribir este código? antes deServicePointManager.ServerCertificateValidationCallback ejecutar o antesStream stream = request.GetRequestStream()?

public HttpWebRequest GetRequest()
{
    CookieContainer cookieContainer = new CookieContainer();

    // Create a request to the server
    HttpWebRequest request = (HttpWebRequest)WebRequest.Create(_remoteUrl);

    #region Set request parameters

    request.Method = _context.Request.HttpMethod;
    request.UserAgent = _context.Request.UserAgent;
    request.KeepAlive = true;
    request.CookieContainer = cookieContainer;
    request.PreAuthenticate = true;
    request.AllowAutoRedirect = false;

    #endregion

    // For POST, write the post data extracted from the incoming request
    if (request.Method == "POST")
    {
        Stream clientStream = _context.Request.InputStream;
        request.ContentType = _context.Request.ContentType;
        request.ContentLength = clientStream.Length;

        ServicePointManager.ServerCertificateValidationCallback = delegate(
            Object obj, X509Certificate certificate, X509Chain chain, 
            SslPolicyErrors errors)
            {
                return (true);
            };

            Stream stream = request.GetRequestStream();

            ....
        }

        ....

        return request;
    }
}   

Respuestas a la pregunta(11)

Su respuesta a la pregunta