我在使用 MySqlDataAdapter.Fill(DataTable) 方法时遇到问题。
显然,我使用的是 MySQL。
昨天开始出现这个问题,在此之前,一切正常。这个问题“不知从何而来”。
我有一个包含约 300 行的表。而且会更大。当我使用 Fill 方法进行查询时,获取行需要太多时间。并抛出超时异常。
仅成功获取80行需要大约 30 秒!
但是当我直接在 MySQL 查询浏览器中执行SAME查询时,所有行都会立即获取。
两天前我测试了相同的方法,一切正常。
为什么会这样?
我解决了这个问题!
几天前,我配置了我的 app.config 以在我的应用程序中进行一些跟踪,但我忘记删除了。我放了这个:
<system.diagnostics>
<trace autoflush="true" />
<sources>
<source name="System.Net">
<listeners>
<add name="System.Net"/>
</listeners>
</source>
<source name="System.Net.Sockets">
<listeners>
<add name="System.Net"/>
</listeners>
</source>
<source name="System.Net.Cache">
<listeners>
<add name="System.Net"/>
</listeners>
</source>
</sources>
<sharedListeners>
<add
name="System.Net"
type="System.Diagnostics.TextWriterTraceListener"
initializeData="System.Net.trace.log"
/>
</sharedListeners>
<switches>
<add name="System.Net" value="Verbose" />
<add name="System.Net.Sockets" value="Verbose" />
<add name="System.Net.Cache" value="Verbose" />
</switches>
</system.diagnostics>
我删除了它,重新编译并解决了问题:D