我在使用 MySqlDataAdapter.Fill(DataTable) 方法时遇到问题。
显然,我使用的是 MySQL。
这个问题是昨天开始的,在此之前,一切正常。这个问题“不知从何而来”。
我有一个包含约 300 行的表。而且它会更大。当我使用 Fill 方法执行查询时,获取行需要花费太多时间。并抛出超时异常。
大约需要 30 秒才成功获取 80 行!
但是当我直接在 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
关于c# - MySqlDataAdapter.Fill(DataTable) 超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11722778/