C# 访问在windows服务中创建的对象

C# 访问在windows服务中创建的对象,c#,windows-services,C#,Windows Services,如果我要创建一个windows服务,它在后台调用数据库并填充各种对象。那么,是否可以从独立的C#应用程序访问这些对象?如果是的话,我会怎么做 非常感谢,您可以使用它在两个.Net应用程序之间进行通信 这应该放在服务内部,以侦听客户端应用程序请求 private static void SendByteAndReceiveResponse() { using (NamedPipeServerStream namedPipeServer = new N

如果我要创建一个windows服务,它在后台调用数据库并填充各种对象。那么,是否可以从独立的C#应用程序访问这些对象?如果是的话,我会怎么做

非常感谢,您可以使用它在两个.Net应用程序之间进行通信

这应该放在服务内部,以侦听客户端应用程序请求

private static void SendByteAndReceiveResponse()
 {           
     using (NamedPipeServerStream namedPipeServer = new 
      NamedPipeServerStream("test-pipe"))
     {
    namedPipeServer.WaitForConnection();
    namedPipeServer.WriteByte(1);
    int byteFromClient = namedPipeServer.ReadByte();
    Console.WriteLine(byteFromClient);
  }
}
这将在客户端应用程序中实现

    private static void ReceiveByteAndRespond()
   {           
      using (NamedPipeClientStream namedPipeClient = new 
      NamedPipeClientStream("test-pipe"))
     {
    namedPipeClient.Connect();
    Console.WriteLine(namedPipeClient.ReadByte());
    namedPipeClient.WriteByte(2);
   }
}
注意

请做些修改

namedPipeClient.WriteByte(2)

根据您的业务逻辑


请阅读线程

严格来说,访问对象是不可能的。您可以按照@Taha Sultan Temuri将您的应用程序与命名管道连接(例如),并序列化您的对象,在另一端发送并反序列化它们