从数据库读取图片是个相当不理智的选择。你想读取快速就要在SQL Server上写存储过程,命名主键,然后直接用SqlClient访问你做好的视图,而不是利用SqlClient做解析、做连接查询等工作。因为他的计算效率依赖于网络,要分析也是从SQL读取表到本地,然后本地边读取边去查询远程表,这能不慢吗,写多了你慢慢会发现:
在SQL Server上做好查询视图,C#直接访问远远比C#分析快
用代码来做数据库操作远远比自带的控件灵活快速
其实连接一样的你打开一次就足够了,程序Exit自然关闭,当你程序初始化的时候就openlink打开数据库连接,后面再去公用这个连接,程序关闭C#回收垃圾机制会销毁。不需要你真的去try打开他catch异常,flinnly关闭,不知道大家有没有发现连接数据库也需要时间的,关闭它也是浪费时间的。
触发器和同步用SQL Server代理去做,每日做好计划代理就OK
不要真的去把数据库发布到外部网络,在设备允许范围你会发现这是一个很蠢的事情,通过webservice或者WEB来操作来自外网服务器的数据库。
用linkq解决很多问题,list<>远远比Arraylist要快,Arraylist依赖系统缓存,当你数据量超出系统缓存的时候,你会发现各种错误各种卡...
借助dataGridView,他其实是个好东西,你把数据存进去,再去交叉分析其他数据,会事半功倍,永远不要在C#里使用Select *, 连接查询 ,游标,检索ID,你会发现真的很呆