Исходя из своего кода, вы всегда переходите к первому оператору if, который будет читать и задавать форму кода dilKodu
Ваш код должен быть больше похож на этот
if (HttpContext.Current.Session != null)
{
ci = (CultureInfo) this.Session["Culture"];
if (ci == null)
{
var langName = Request.Headers.GetValues("languageCode");
Session["dilG"] = langName;
ci = new CultureInfo(langName);
Session["Culture"] = ci;
}
}
else
{
Session["dilG"] = "session hazır değil tr yapıldı";
ci = new CultureInfo("tr");
}
В основному вас операторы if неправильно настроены для того, что вы пытаетесь сделать.
Также может быть целесообразно сохранить ваши объекты сеанса маленькими, то есть просто сохранить langName в сеансе и каждый раз создавать из него CultureInfoчем хранить КультураИнфо.