Я играю с сервисами Durable WCF. т.е. службы WCF, которые сохраняют свое состояние (в моем случае в базе данных сервера sql) между вызовами методов.
Я хотел бы иметь возможность использовать такие долговечные компоненты либо в операциях Workflow, либо в приложениях Asp.Net, либо в обоих случаях.
Я понимаю, как настроить эти компоненты, чтобы они сохранили свои данные и как заставить их удалить их постоянство. Однако я зациклен на том, как я могу гарантировать, что они всегда правильно удаляют информацию о своем постоянстве из базы данных Sql Server.
Например, допустим, что я подключаюсь к компоненту Durable WCF из приложения Asp.Net. Я могу поместить его контекст в сессию и затем восстановить его из любого места в моем приложении. Я могу перехватить Session_End в файле Global.asax и сказать компоненту, что он больше не нужен.
Кроме - как насчет того, когда Session_End не срабатывает должным образом (по какой-либо причине)?
Допустим, я хочу использовать тот же компонент Durable для других вещей за пределами Asp.Net, где нет сеанса и где может потребоваться, чтобы состояние оставалось на несколько дней или недель между вызовами.
Существует ли уже стандартный способ очистки информации о постоянстве, когда она больше не нужна? Как вы можете точно сказать, если он больше не нужен? Что бы вы предложили?