当前位置:编程学习 > C#/ASP.NET >>

.net应用程序慢的问题

最主要的原因是界面太花哨了,用了不合格的第三方控件,加上第三方的劣质label过多。

多线程操作的时候,Invoke没有设计好,Invoke的小数据太多这样就会卡,Invoke应当谨慎设计,避免频繁的Invoke。

程序的其他部分不会很慢,因为其他部分微软只是用.net做了包装而已,真正执行的还是原生代码,比如数据库联接之类的

最主要的原因就是界面问题,特别是第三方控件不要用,我现在几乎没看到跑得快的第三方UI控件库,都慢的要死。

折中的解决办法,就是内嵌WebBrowser,你的程序作为WebBrowser的宿主提供一个对象就可以了。界面部分都是Html。

这是我写程序的经验,希望对大家有用。如果需要我的源程序,我可以提供一部分给大家做个参考。 --------------------编程问答-------------------- 说得是实情.

折中的解决办法,就是内嵌WebBrowser,你的程序作为WebBrowser的宿主提供一个对象就可以了。界面部分都是Html。
对此部分比较感觉兴趣,楼主能说说是怎么做的么? --------------------编程问答-------------------- WebBrowser.ObjectForScripting 

等于
javascript中的window.external 


WebBrowser.ObjectForScripting 设置成你自己的对象在javascript中可以随便访问,还可以访问其他返回的自定义对象,MSDN上有很详细的例子。
--------------------编程问答-------------------- 这个办法是很好的

如果silverlight很成功,就可以用silverlight开发界面,把应用逻辑都隐藏到后面去,那么我们现在针对webBrowser开发的程序可以比较平滑的过渡。

我们的应用程序的程序部分就相当于客户端的中间层。

我最近也用原生VC++开发了firefox的一个插件,没把我累死,用VC++作客户端肯定是不行了。 --------------------编程问答-------------------- 谢谢楼主解答,方法的确很灵活. --------------------编程问答-------------------- 不知楼主对wpf有没有研究.是不是wpf可以改变winform界面控件显示慢的问题?听说它应用了硬件加速. --------------------编程问答-------------------- 也有缺陷,就是你必须对javascript很精通,主要是要用javascript操作界面,

html中的输入界面是比较弱的,要用javascript好好做才行。 --------------------编程问答-------------------- silverlight不是很清楚,只是概念了解,我的电脑没敢装vs 2007和.net 3.5怕跑不动。

昨天在杭州浙江大学微软的人搞了一个什么讲座,我去了一下,看看还不错,至少在演示用的笔记本上跑得很流畅,但是开发工具我没有抽到奖,感觉很遗憾。

网上D版的还没有下。

那个讲座的人还问,在座的有几个用Vista的,结果一个人也没有,竟然还问为什么不买个装一下,全场都惊愕,继而大笑。 --------------------编程问答-------------------- 昨天演示的时候,讲师说,目前silverlight(就是原来的WPF)可以支持很多种动态语言,目前可用的有ruby,pythoon,javascript(已经完全符合一个什么标准了,不再是微软自家的那个了)等等,这些都是开源的,依靠silverlight,动态语言可以和.net库交互,包括你自己开发的程序集。

同时,微软还支持自定义动态语言,也就是说,你有足够的兴趣地话可以自己开发自家用的动态语言,并且可以和.net平台上的其他语言开发的库无缝集成。据说难度不是很大的,说是微软已经作了大量的基础性的工作,要新开发动态语言只要自己做很小的一部分就可以了。

讲师主要演示了视频方面的程序,性能相当可以,画中画,同时播放大概20个小视频窗口,非常流畅,而且那些小窗口播放的同时还可以变形旋转。很不错的体验。

后来,又讲了微软的CRM4.0,更好的支持第三方扩展开发,比较傻瓜的一个工具,程序员都不太感兴趣,不过做管理软件应该很方便。他可以用outlook作客户端
--------------------编程问答-------------------- up --------------------编程问答-------------------- d
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,