C# 在请求期间为消费服务提供数据上下文?

C# 在请求期间为消费服务提供数据上下文?,c#,wcf,entity-framework,C#,Wcf,Entity Framework,通常,我的应用程序的EF模型由网站本身使用,因此我使用以下扩展方法在请求期间授予上下文: public static class HttpContextExtensions { internal const string _contextDataKey = "dataContext"; public static EntityDataModelContext GetDataContext(this HttpContext httpContext) { i

通常,我的应用程序的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
所做的解决方案


在哪里可以存储服务请求的数据上下文?

您必须为
OperationContext
创建
IExtension
实现。如何做到这一点