我有一个使用复合应用程序块和智能客户端软件工厂开发的 .NET 2.0 WinForms 应用程序。
我正在考虑开发一个包含浏览器控件的模块,该控件将使用用户登录 WinForms 客户端时建立的凭据访问 ASP.NET 网站。
我的目标是使用此策略将客户端中当前的所有模块转换为 ASP.NET 并停用“智能”客户端。WinForms 客户端的安全性当前是使用 ASP.NET Membership 功能实现的。
这可能吗?明智的?
是的你可以。制作一个承载 WebBrowser 控件的 SmartPart,添加一些用于向前和向后导航的按钮,以及一个 url 文本框;然后将 WebBrowser 控件指向您的 Web 应用程序的 URL。
这是明智的。我们使用 CAB/SCSF 创建了一个我们称为“集成桌面”的应用程序。该应用程序充当公司所有内部应用程序的平台;一切都集成到这个桌面应用程序中。我们添加了一个基础模块,基本上是我在上一段中描述的强大版本,以促进网页浏览,因为一些预先存在的应用程序是基于网络的,我们的用户希望在他们所做的所有事情的同一个地方访问那些其他工作。一件很酷的事情是使用 WebBrowser 的ObjectForScripting属性,它允许在桌面应用程序和托管在其中的 Web 应用程序之间进行某种程度的无缝集成。
你有什么要求?
您将主要选择 Web 应用程序而不是智能客户端
通过让您的应用程序用户必须通过智能客户端(浏览器控制)访问 Web 应用程序,您将丢失 (1) 和 (2)。在我看来,它会破坏它的目的。