我在C#中有一个Web服务,并希望有一个嵌套的内部类,它抽象出会话集合,如下所示:
public class Service : System.Web.Services.WebService
{
[WebMethod]
public string Foo(string ticket)
{
SessionPool.getSession(ticket);
}
private class SessionPool
{
public static Session getSession(string ticket)
{
// this is what i want to do, but I can't access Context
return (Session)Context.Session[ticket];
}
}
}
是否可以通过嵌套类访问WebService类的HTTP上下文?如果没有,是否可以存储对它的引用?
C#中的嵌套类与Java中的(非静态)内部类不同.没有对包含类的实例的隐式引用 - 因此,如果没有显式引用,则不能使用包含类的任何实例成员.
但是,您可以访问包含类的所有私有成员 - 具有适用于实例成员的引用.