Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

सी # डेटाटाइम का एसक्यूएल सर्वर डेटाटाइम में रूपांतरण एक त्रुटि फेंक रहा है

आपका कोड - जैसा अभी है - स्ट्रिंग स्तर पर किसी भी मान को स्थानांतरित करेगा . यह एक वास्तव में खराब तरीका है . आपके सिस्टम की सेटिंग (भाषा और संस्कृति) के आधार पर होने वाले निहित रूपांतरण अत्यधिक हैं। सबसे बुरी बात यह है:जब आप इसका परीक्षण कर रहे हों तो यह आपकी मशीन पर बहुत अच्छा काम कर सकता है, लेकिन ग्राहक के सिस्टम पर यह अजीब संदेशों के साथ टूट जाता है। हैप्पी डिबगिंग :-(

अपना कोड इस तरह बदलें

foreach (PropertyInfo prop in props) {
    // Setting column names as Property names.
    if (prop.PropertyType.IsGenericType && prop.PropertyType.GetGenericTypeDefinition() == typeof(Nullable<>))
        dataTable.Columns.Add(prop.Name, prop.PropertyType.GetGenericArguments()[0]);
    else
        dataTable.Columns.Add(prop.Name, prop.PropertyType);
}

यह कॉलम जोड़ देगा - भले ही यह एक अशक्त प्रकार है - सही डेटा प्रकार के साथ।

क्रेडिट: इस जवाब ने मेरी मदद की

अपडेट और भी आसान

(लिंक किए गए उत्तर के नीचे एक टिप्पणी में यवेस एम के लिए thx)

foreach (PropertyInfo prop in props) {
    // Setting column names as Property names.
        dataTable.Columns.Add(prop.Name, Nullable.GetUnderlyingType(prop.PropertyType) ?? prop.PropertyType);
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. क्या SQL सर्वर 'मनी' डेटा एक दशमलव फ़्लोटिंग पॉइंट या बाइनरी फ़्लोटिंग पॉइंट टाइप करता है?

  2. SQL सर्वर में उपयोगी सिस्टम संग्रहीत कार्यविधियाँ

  3. दूसरे कॉलम के रूप में DISTINCT कॉलम की डुप्लिकेट पंक्तियों की संख्या कैसे प्राप्त करें?

  4. टी-एसक्यूएल का उपयोग करते हुए फजी मिलान

  5. एंटिटी फ्रेमवर्क 4 में अस्थायी तालिका या तालिका चर के उपयोग की सिफारिश करें। प्रदर्शन इकाई ढांचे को अपडेट करें