WPF应用程序进入ASP

时间:2009-04-30 21:36:50

标签: asp.net wpf

有没有办法将WPF应用程序转换为ASP应用程序?还是他们完全不相关的技术? XAML格式让我想起了很多HTML,似乎可能有办法。

2 个答案:

答案 0 :(得分:4)

WPF应用程序是一个Windows应用程序,而ASP.Net应用程序是一个Web应用程序。这两个平台存在巨大差异,难以转换。在大多数情况下,由于这些平台的不同限制和优势,这甚至不可行。

要查看这可能是可能的,但如果WPF应用程序执行任何操作,例如写入本地文件系统或修改用户计算机上的某些内容,这将无法在Web上运行。

如果应用程序供内部使用,您可以查看XAML浏览器应用程序(XBAP)。这些只有安全限制,您可以通过签署部署并通过域将正确的证书传播到客户端计算机来绕过这些限制。关于XBAP的重要部分是它们可以与WPF应用程序共享程序集,因此将WPF应用程序转换为XBAP非常简单。

Silverlight是另一种可能性,但WPF和Silverlight之间存在相当大的差异,将WPF应用程序转换为Silverlight应用程序需要比最初想象的更多的重写。 Silverlight引擎构建在.Net之上,但它使用不同的虚拟机并且不是二进制兼容的。移植到ASP.Net仍然比较容易!

即使你设法将XAML转换为ASP.Net HTML,你也会遇到控制行为微小差异的问题。如果你的WPF应用程序使用主要的WPF功能,例如在标签页标题中嵌入控件或应用转换,甚至不会想到尝试这个。

答案 1 :(得分:1)

我不相信有这么简单的方法;它们确实基本上是不相关的技术。当ASP.NET呈现HTML以便通过浏览器查看时,WPF呈现到您的屏幕,并且所有事件/数据管道都完全不同。

如果您想在网络上运行它,可以将您的WPF应用程序轻松转换为Silverlight应用程序。