我想在我的应用程序(.NET、C#)中为正在进行的操作实现特定的上下文,以便应用程序启动和执行的代码可以访问它。
问题是上下文没有像某些 API 那样作为对象传递。
我想在 WCF 中实现类似于 OperationContext 的东西,这个静态类可以为每个操作提供其上下文。
如何实现这样的系统?
一个示例用法:
我们的应用程序加载并执行由有权访问我们 SDK 的任何人创建的第 3 方“插件”。
这样的用户代码可能如下所示:
public void SomeMethod(string a, string b)
{
// NEEDED: something like this
Context.Results = new Results();
// Do some stuff here
// Call another method (without passing Results to it)
AnotherMethod();
}
public void AnotherMethod()
{
// NEEDED: Access the context (Results) somehow to add more info to it.
Context.Results.Add(something);
}
根据这个例子,我只需要一些静态的 Context 类,但我如何确保它对于我的应用程序中的每个执行操作都是唯一的?