2010-03-05 4 views
0

У меня есть простой веб-приложение, построенное в ASP.NET WebForms C#сохранять и извлекать значения в веб-приложение

, где и как будет лучший способ сохранить информацию из кода позади? (а также получить эту информацию)

например, все, что я хочу сохранить, - это дата. и флаг, установленный на True или False. и иметь доступ к ним в коде.

Im не использует db для этого веб-приложения.

Редактировать: и для этой цели невозможно использовать переменные сеанса.

благодаря

ответ

1

Если вам нужно прочитать сохраненную переменную после длительного периода времени, ее следует сохранить в локальном файле или в базе данных.

Вы можете создать файл, используя объект FileStream, а затем записать свое значение в файл.

Чтобы получить путь, на котором ваше приложение имеет достаточные права на запись файла, используйте Server.MapPath.

Примечание. Если возможно, и если хранящиеся вами данные не должны быть доступны пользователям, вы должны настроить свой веб-сайт IIS, чтобы запретить ему обслуживать этот файл для клиентов.

0

Используйте объект Session:

Session["thedate"] = date; 

DateTime date = (DateTime)Session["thedate"]; 
+0

Извините, должен был упомянуть, я не хочу использовать переменные сеанса. Приложение может сохранять и затем извлекать данные после длительных периодов времени. Я не хочу, чтобы он терпел неудачу с истечением сессий и т. Д. ... так что что-то более постоянное. – raklos

3

Если вы должны сохранить данные за произвольный период времени, то вам необходимо хранить его в базе данных.

+0

как насчет обновления appsetting в web.config? – raklos

1

Использовать переменную приложения, например Application ["thedate"] = date; и вы можете вернуться как date = Application ["thedate"]. Дата будет сохранена до перезапуска пула приложений (что также происходит при перезапуске IIS или системы).

Для получения более длительного времени сохраните файл xml на диске (для этого используйте XMLReader и XMLWriter).

1

Если это информация пользователя, вы можете использовать либо cookie-файл браузера, либо viewstate.

Смежные вопросы