MySql.Data को अनइंस्टॉल करें और इसे MySqlConnector से बदलें ।
(प्रकटीकरण:मैं MySql बग जो आपको मिला का रिपोर्टर हूं और MySqlConnector में प्राथमिक योगदानकर्ता ।)
साथ ही उस समस्या को ठीक करने के लिए और कई अन्य बग्स , MySqlConnector सही async I/O समर्थन और प्रदर्शन सुधार जोड़ता है।
यदि आप पुस्तकालयों को स्विच नहीं करना चाहते हैं, तो GetBytes
. की एक अल्पज्ञात विशेषता (MySql.Data और MySqlConnector दोनों द्वारा समर्थित) यह है कि null
में गुजर रहा है बफ़र आवश्यक लंबाई लौटाता है, इसलिए आपको इसे हार्ड-कोड करने की आवश्यकता नहीं है:
// get the length of the column and allocate a buffer
var length = dbDataReader.GetBytes(0, 0, null, 0, 0);
var passwordHash = new byte[length];
// fill the buffer from the column
dbDataReader.GetBytes(0, 0, passwordHash, 0, passwordHash.Length);