如何在Windows应用程序和Web应用程序中实现共享内存?
问题描述:
我在.NET版本4.0中制作Windows应用程序和Web应用程序。在那个应用程序中,我将.aspx页面的数据请求发送到Windows应用程序.Windows应用程序有一个data.i集合,希望通过收集的适当数据发送对该请求的响应。 从Web应用程序,我正在请求特定患者的数据,并且我正在发送查询字符串中的patientID。在Windows应用程序中,我有集合作为如何在Windows应用程序和Web应用程序中实现共享内存?
class StreamDataInfo
{
public string m_patientID { get; set; }
public List<string> m_StreamData { get; set; }
}
从这个集合,我想响应该请求。请帮助me.Thanks提前归还从m_StreamData列表数据。
答
我不知道,我知道你心目中的架构......
而对于共享内存:
在windows这是由“内存映射档案”来实现 - 这些可以是真实文件或“非持久性”文件。
结合全局Mutex
,您可以在同一台机器上的两个或多个进程/线程之间实现通信方案。
一些参考链接:
答
检查下列选项:
- 主机在Windows应用程序,将暴露你的数据的WCF服务。从WCF服务获取Web应用程序请求数据。
- 使Web应用程序将请求写入指定文件夹上的文件; Windows应用程序将轮询此文件夹,然后将数据发送到Web应用程序(我不确定这会正常工作,因为我没有足够的有关您的体系结构的信息,但我会尝试在Web应用程序中实现WCF服务为此)
- 实现WCF服务,该服务将直接从Windows应用程序数据库公开数据,或者如果可能,直接从Web应用程序访问Windows应用程序数据库。
您的Web应用程序调用Windows应用程序? Windows应用程序位于何处?在服务器上? – Heinzi 2011-12-16 08:36:16