Предоставить потребляющему сервису контекст данных на время запроса? - PullRequest
0 голосов
/ 31 июля 2011

Как правило, модель EF моего приложения используется самим веб-сайтом, поэтому я использую следующий метод расширения для предоставления контекста на время запроса:

public static class HttpContextExtensions
{
    internal const string _contextDataKey = "dataContext";

    public static EntityDataModelContext GetDataContext(this HttpContext httpContext)
    {
        if (httpContext == null) // services
            return new EntityDataModelContext();

        if (httpContext.Items[_contextDataKey] == null)
            httpContext.Items.Add(_contextDataKey, new EntityDataModelContext());

        return (EntityDataModelContext)httpContext.Items[_contextDataKey];
    }
}

Когда недавно созданная служба WCF попыталасьПолучив контекст данных, я наткнулся на тот факт, что служба не содержит HttpContext в моем приложении.

Теперь решение, которое я здесь представил, «работает», но я бы предпочел решение, аналогичное тому, которое былосделано с HttpContext.

Где я могу сохранить контекст данных для запроса на обслуживание?

1 Ответ

1 голос
/ 31 июля 2011

Вы должны создать IExtension реализацию для OperationContext. Вот пример как это сделать.

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