是否可以将Socket.Handle从C#应用程序传递到运行在同一服务器上的ASP.NET Web应用程序?

是否可以将Socket.Handle从C#应用程序传递到运行在同一服务器上的ASP.NET Web应用程序?,c#,asp.net,sockets,C#,Asp.net,Sockets,是否可以将Socket.Handle从C#应用程序传递到运行在同一服务器上的ASP.NET Web应用程序 我环顾四周,发现了将C#套接字传递给非托管代码的示例,但这还不够。我很好奇您为什么要这样做 至于答案,不,我99%肯定这是不可能的,因为除非我非常错误,否则套接字句柄的作用域是操作系统级别的进程 编辑: 根据这些注释,听起来您希望让服务器进程在IPC传输上运行WCF服务,ASP.NET应用程序可以使用该服务将命令传递给硬件 另一个好处是,如果您使用WCF并最终需要将ASP.NET站点移动到

是否可以将Socket.Handle从C#应用程序传递到运行在同一服务器上的ASP.NET Web应用程序


我环顾四周,发现了将C#套接字传递给非托管代码的示例,但这还不够。

我很好奇您为什么要这样做

至于答案,不,我99%肯定这是不可能的,因为除非我非常错误,否则套接字句柄的作用域是操作系统级别的进程

编辑:

根据这些注释,听起来您希望让服务器进程在IPC传输上运行WCF服务,ASP.NET应用程序可以使用该服务将命令传递给硬件


另一个好处是,如果您使用WCF并最终需要将ASP.NET站点移动到另一个框中,则可以相对轻松地切换到TCP传输。

我有一个C#服务器应用程序,该应用程序保存来自现场硬件(嵌入式C)的持久套接字连接。此服务器当前使用来自现场硬件的数据包信息更新SQL数据库。然后我有一个ASP.NET web UI,它使用相同的数据库来显示有关硬件的信息。web ui允许与硬件交互。当前,web UI会更新数据库。C#应用程序有一个计时器,它使用sql CDC检查更改的数据,然后发送回现场硬件。如果我可以从web ui中的C#应用程序获得套接字句柄,我就可以获得有关信息的hanks,我将不得不研究WCF和IPC。我目前有一个使用TCP的原型C#应用程序。我研究了WCF并创建了一个测试WCF服务。如果让我的ASP.NET web应用程序从WCF调用函数,那么我希望WCF在服务器上运行的C#应用程序上调用函数。这可能吗?我之所以需要它,是因为我的C#应用程序拥有所有连接的套接字,并拥有所有套接字处理代码。我想我可以让WCF服务拥有所有的套接字处理代码?虽然我宁愿不。。。我不确定我现在在哪里做什么。我不确定我是否理解最后一点。如果ASP.NET中的操作调用硬件中的行为,则应在与现有服务(维护到硬件的TCP连接)相同的进程中托管WCF服务。如果硬件在ASP.NET应用程序中调用行为,那么您应该在ASP.NET应用程序中托管WCF服务。在我的例子中,是-ASP.NET中的操作在硬件中调用行为。我的windows窗体应用程序当前处理所有TCP连接,并保存每个连接硬件的套接字。据我所知,如果我在windows窗体应用程序中托管WCF服务,我的asp.net和windows窗体应用程序可以调用WCF中的函数。但是,WCF无权访问windows窗体应用程序中的套接字/套接字代码。我不知道如何使ASP.NET调用WCF函数,然后WCF函数又调用windows窗体函数。。。