c # Asp.net obteniendo el time de expiración de cookies establecido en javascript siempre devuelve 01.01.0001

Uso una function de JavaScript para almacenar la cookie:

createCookie("teaser", "teaser", 7); function createCookie(name, value, days) { var expires = ""; if (days) { var date = new Date(); date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000)); expires = "; expires=" + date.toGMTString(); } document.cookie = name + "=" + value + expires + "; path=/"; return value; } 

Y cuando reviso las cookies en mi browser, la date de caducidad de la cookie del teaser está establecida correctamente: 25. oktober 2011 16:12:17

Pero cuando en C # voy a get el valor, la date de vencimiento se establece en 01.01.0001.

  var cookie = Request.Cookies["teaser"]; if (cookie != null && teaserList.Count() > 0) { cookie.Expires is 01.01.0001 

¿Cualquier pista?

Egghead dice que:

El browser es responsable de administrar las cookies, y la date y hora de caducidad de la cookie ayudan al browser a administrar su almacenamiento de cookies. Por lo tanto, aunque puede leer el nombre y el valor de una cookie, no puede leer la date y hora de caducidad de la cookie. Cuando el browser envía información de cookies al server, el browser no incluye la información de caducidad. (La propiedad Expires de la cookie siempre devuelve un valor de date y hora igual a cero). Si le preocupa la date de vencimiento de una cookie, debe restablecerla.

El browser no transmite la date de caducidad de una cookie a los serveres, esto es según la especificación HTTP.

Los browseres solo envían el nombre y el valor de la cookie.

La propiedad Expires en el object cookie solo se usa al establecer la date de caducidad en una cookie que se escribirá en una respuesta, no se leerá en una request.

Al leer la cookie, el valor de la propiedad Expires siempre será nulo. Puede ver esto usted mismo examinando los encabezados HTTP. Si realmente desea leer el valor de caducidad de una cookie, intente escribirla en el valor mismo o use otra cookie con el valor de la date de vencimiento (deberá mantenerlas sincronizadas).