Jump to content
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

Sign in to follow this  
Cybernavigator

Qual é a diferença?

Recommended Posts

Cybernavigator

Boas, já me tou a passar com isto, ajudem-me aqui, eu tenho duas funções

        System.Net.CookieContainer mCookies = new System.Net.CookieContainer();
        public string Get(string url)
        {
            string resposta = null;

            System.Net.HttpWebRequest objAPedir = (System.Net.HttpWebRequest)System.Net.WebRequest.Create(url);

            objAPedir.Method = "get";

            if (mCookies.Count > 0)
                objAPedir.CookieContainer = mCookies;
            else
                mCookies = new System.Net.CookieContainer();
            System.Net.HttpWebResponse objResposta = (System.Net.HttpWebResponse)objAPedir.GetResponse();
            foreach (System.Net.Cookie cook in objResposta.Cookies)
            {
                mCookies.Add(cook);
            }
            System.IO.StreamReader sr = new System.IO.StreamReader(objResposta.GetResponseStream());
            resposta = sr.ReadToEnd();
            sr.Close();

            return resposta;
        }
        public string Post(string url, string StrPost)
        {
            string resposta = null;

            System.Net.HttpWebRequest objAPedir =
              (System.Net.HttpWebRequest)System.Net.WebRequest.Create(url);

            objAPedir.Method = "POST";
            if (mCookies.Count > 0)
                objAPedir.CookieContainer = mCookies;
            else
                mCookies = new System.Net.CookieContainer();
            objAPedir.ContentLength = StrPost.Length;
            objAPedir.ContentType = "application/x-www-form-urlencoded";
            System.IO.StreamWriter sw =
               new System.IO.StreamWriter(objAPedir.GetRequestStream());
            sw.Write(StrPost);
            sw.Close();

            System.Net.HttpWebResponse objResposta =
              (System.Net.HttpWebResponse)objAPedir.GetResponse();
            foreach (System.Net.Cookie cook in objResposta.Cookies)
            {
                mCookies.Add(cook);
            }
            System.IO.StreamReader sr =
               new System.IO.StreamReader(objResposta.GetResponseStream());

            resposta = sr.ReadToEnd();
            sr.Close();

            return resposta;
        }

O get, obtem info da net, o post, envia info e obtem o resultado, e o mcookies guarda a sessão.

Ora bem, no C# 2008 ele não guarda a sessão, copiando integralmente o código para o 2005 já me guarda a sessão.

Qual é a diferença de um para o outro que eu não tou mesmo a perceber.


Melhores cumprimentos,João Lopes***Esta mensagem foi escrita ao abrigo do novo Acordo Ortográfico***

Share this post


Link to post
Share on other sites
Betovsky

Hmm o problema não deve estar no código. Isso cheira-me que deve ser alguma opção no VS ou do projecto/solução.


"Give a man a fish and he will eat for a day; Teach a man to fish and he will eat for a lifetime. The moral? READ THE MANUAL !"

Sign on a computer system consultant's desk

Share this post


Link to post
Share on other sites
Cybernavigator

Ya, mas não encontro nada, também não me cheira que seja do código, mas é estranho :|


Melhores cumprimentos,João Lopes***Esta mensagem foi escrita ao abrigo do novo Acordo Ortográfico***

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.