Закодированная ошибка Cookies - PullRequest
0 голосов
/ 12 августа 2011

Мое приложение разделено на 3 разных слоя.WEB, BLL и DAL.Я установил файл cookie из веб-слоя, а затем запросил его на другой странице, чтобы отобразить его пользователю.

HttpContext.Current.Response.Cookies["FlashMessenger"]["Type"] = "error";
HttpContext.Current.Response.Cookies["FlashMessenger"]["Message"] = "Aucun vol trouvé pour la date donnée. S'il vous plaît affiner votre recherche.";

Когда я делаю то же самое из BLL и пытаюсь отобразить его, возвращенное сообщение не работает.

var flashMessengerC = Request.Cookies["FlashMessenger"];
var message = flashMessengerC["Message"];
var type = flashMessengerC["Type"];
MsgLBL.Text = message;

Это то, что я получил "Aucun vol trouvé é la la donnée. S'il vous plaít affiner votre recherche."и затем расшифровывается, но он делает то же самое.Я просмотрел файлы cookie в браузерах, и они были в правильном формате.

Что могло вызвать это?

Буду признателен за любой комментарий.

Спасибо

1 Ответ

0 голосов
/ 12 августа 2011

Не могу быть уверен на 100%, но звучит так, будто ваш BLL работает с другой культурой потоков в вашем интерфейсе.В любом случае наличие вашего BLL, запрашивающего файлы cookie, не очень удачный дизайн - лучше передавать в них информацию, которая им действительно необходима, а не привязывать ее к конкретной реализации, например:

class FlashMessengerInfo
{
     public string Message { get; set; }
     public string Type { get; set; }
}

class MyBLL
{
   public MyBLL(FlashMessengerInfo messageInfo)
   {
   }
}

из веб-интерфейсаВы заполнили бы этот объект и передали его в свой BLL, оставив его отсоединенным от объекта HttpRequest.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...