将C#桌面应用程序移植到Web

时间:2012-03-11 14:20:54

标签: c# c++ asp.net wpf

我出于某种目的构建了一个桌面WPF C#应用程序。 C#应用程序调用另一个C ++应用程序中的函数,并将C ++应用程序的结果公开回C#应用程序。应用程序运行正常,但我打算将相同的功能用于Web(ASP.NET)

我可以使用我在桌面解决方案中使用的那种东西吗? ASP.NET应用程序可以将函数调用到C ++项目中,并从C ++应用程序中获取结果吗? DllImport[CallingConvention = CDecl, CharEncoding=Ansi]

修改 -
我主要担心的是,当我向C ++应用程序发出函数调用时,C ++函数需要5秒钟才能进行处理。在此期间,可以认为C#应用程序具有冻结的GUI。 ASP.NET网站中类似情况会发生什么?因为多线程而且全部都会变得一团糟吗?

3 个答案:

答案 0 :(得分:2)

是的,ASP.NET应用程序可以使用DllImport机制。

答案 1 :(得分:1)

在ASP.NET应用程序中调用COM或pinvoked方法没有问题。即使通话持续5秒钟完成,客户端的浏览器也只是等待答案。因此,您的应用程序的用户体验非常缓慢。

通常这种持久的服务器调用会被包装在AJAX请求中,这样至少可以向用户显示一些信息,例如带有“请稍候”的旋转圈或类似的东西。

答案 2 :(得分:0)

它基本上是一样的! wpf使用与aps.net相同的clr 不同的是,web-app主要是多用户环境。 所以你的com / c ++组件必须与并发用户一起工作。

相关问题