现在做了一个web的网站,后天有一些通信的程序和曾经在winform下做的一模一样,怎样将当初的winform程序搬到现在的web下呢?(这样能省不少事情)还望高人指点一二
------解决思路----------------------
你还是把单独的类复制出来用好了,你那些窗口什么的,在webform里保证都是用不了的
而且通信的东西,是指什么?你想在webform里开线程执行socket吗?劝你还是修改方案,不要这么玩
------解决思路----------------------
winform的通信webform也能做,但问题在于,你的winform是接受到通信就可以直接展示给用户的,webform你接收到了数据能怎么办呢?html5还能通过Websocket跟客户端通信,其它不支持html5的浏览器只能js轮询
------解决思路----------------------
你当初就应该将无关于运行环境的通讯逻辑封装到单独的项目里,比如socket通信,通过自定义事件,完全可以剥离出来,因为通信只需要Stream或者byte[]就够了
------解决思路----------------------
说来说去,我也没有看出你具体在哪里有什么具体的问题。
在你的解决方案中,你可以有asp.net网站、winform窗口程序、wpf窗口程序、Console控制台程序、类库项目等等,都在同一个解决方案下。然后你的asp.net网站可以引用其它任何工程,调用其它工程中的代码,对象实例化其它工程中的类型,没有任何问题。
只要稍微试一下就知道了。
你具体有什么问题?贴出你的截屏画面来。
------解决思路----------------------
如果你有把业务的写在单独的项目(DLL)里,WINFORM只是调用那个项目的,改成WEB的最多是UI部份的重写,
如果你把业务的一起写在了那个exe里也不是不可以的,WEBUI还是要重写,WEB项目还是可以引用那个exe工程,不过不能直接show窗体就是了,只能调用里面的业务部份的代码,这是可以的。
还有一种及端的做法,你啥都不用改,把你WINFROM的主窗体封装成Activex控件,就可以在浏览器上看到你的窗体了。
剩下的子窗体啥的跟WinForm没区别了。照样Show出来。。