WinForm应用程序与ASP.NET Mvc或WebService进行通信

时间:2012-01-10 15:10:49

标签: asp.net-mvc winforms wcf web-services wcf-client

是否有可能让WinForms应用程序通过线路简单地调用Mvc应用程序来执行简单查询(进入控制器>服务>存储库)?我想知道它是否应该提供一个服务api控制器,与应用程序的其余部分分开,将Json吐出到WinForms应用程序,还是应该转到WCF / WebService路由?

它也需要能够进行身份验证,因此最终解决方案是安全的。由于WinForms应用程序需要轮询端点,我不想在每个请求中发送用户名/密码。是否可以为终点上的会话提供一些超时,然后需要从客户端重新登录?

1 个答案:

答案 0 :(得分:2)

是的,您可以使用System.Net.HttpWebRequestSystem.Net.HttpWebResponse类来创建HTTP客户端。请参阅here for an example

Web应用确实有会话超时,当会话中没有活动时会开始计数。因此,如果您不想在每个请求上重新进行身份验证,则需要将服务器在HttpWebResponse中发送给您的cookie回送到具有下一个HttpWebRequest的服务器,以便服务器知道您的会话并让您保持登录。如果删除cookie,则需要重新进行身份验证。如果您暂时不与服务器交互(通常约20分钟),您还需要重新进行身份验证。 (假设您的WinForms应用程序检查登录表单上的“记住我”复选框。)