http://mysite.com/welcome.aspxşeklinde olan adres,
http://mysite.com/welcome.aspx(A(ikRoEoqwOieH_FyADedeEbit-_uDNadHNudahUar-HaUsU99DiasIadsjKAsjJiaojdJaJadijAQBR0))/Welcome.aspx
şeklinde görülmeye başladı. Bu durum normalde cookieless session kullanıldığında yani session ve formlarda cookie kullanılmadığında olur. Normalde aşağıdaki config ayarlarındaki bazı parametreleri belirtmediğimizde kullanılan varsayılan ayarlar, IE10 tarayıcı için değişmiş görünüyor. Bu yüzden uygulamayı eski haline getirebilmek için aşağıdaki iki adımlı çözümü uygulayabiliriz:
1. FormsAuthentication tag’ı içinde cookieless="UseCookies" olarak belirtin:
2. Session tag’ı üzerinde cookieless="false" olarak belirtin:
İkinci bir hata da ASP.NET MVC ile geliştirilen uygulamalara gönderilen jQuery AJAX POST isteklerindeki null argümanlar yüzünden action metotların hata vermesi ki bu major bir bug ve jQuery’i ilgilendiriyor. Halen bir çözümü bulunmamakla beraber bir ticket açılmıştır, buradan durum takip edilebilir.
Ancak geçici olarak tarayıcının uyumluluk modunu IE9 a zorlayabiliriz. Bu işlem cookieless session problemi dahil tüm sorunları ortadan kaldırmaktadır.
MVC için
ASP.NET için
olacak şekilde
protected override void OnInit(EventArgs e) { base.OnInit(e); var ua = HttpContext.Current.Request.UserAgent; if (ua != null && ua.ToLower().Contains("msie 10")) this.Header.Controls.Add(new HtmlMeta() { Content = "IE=9,chrome=1", HttpEquiv = "X-UA-Compatible" }); else this.Header.Controls.Add(new HtmlMeta() { Content = "IE=Edge,chrome=1", HttpEquiv = "X-UA-Compatible" }); }
kullanabiliriz.
Referans:
http://discusscode.blogspot.com/2012/12/fixing-aspnet-application-for-ie10.html
Hiç yorum yok:
Yorum Gönder