عندما كنت أقوم بعمل شيء ما اليوم، اكتشفت مشكلة غريبة جدًا. نوع إعداد الحقل في قاعدة البيانات (SqlServer) هو ntext، لكن البيانات المحفوظة دائمًا ما تكون قصيرة جدًا بعد الإعداد، بعد تتبع نقطة التوقف وتصحيح الأخطاء، وجدت أن البيانات المرسلة طبيعية، ولكن بعد إجراء عملية التخزين، يكون المحتوى المحفوظ دائمًا قصيرًا جدًا. عدد الأحرف المحفوظة هو 16، وطول نوع الحقل تم تعيين ntext في قاعدة البيانات أيضًا وكان عمره 16 عامًا، لذلك اعتقدت أنه كان خطأً في قاعدة البيانات، لذلك كتبت عبارة إدراج في محلل الاستعلام لاختباره، وتبين أن المحتوى المحفوظ كان طبيعيًا، لذا يجب أن تكون المشكلة أخيرًا، وجدت أن كائن المعلمة SqlParameter كان يقوم بإنشاء كائن أمر SqlCommand. نوع المعلمة المحدد هو ntext وتم تحديد طوله بـ 16. طريقة الكتابة هي كما يلي
SqlParameter[] parms = new SqlParameter[] {
معلمة Sql جديدة (TEMPLATEID، SqlDbType.Int)،
معلمة Sql جديدة ("@Content"، SqlDbType.NText،16)
};
قم بإزالة حد الطول واختبره مرة أخرى. هاها، يبدو أن مفاهيم العديد من الأشياء ليست واضحة جدًا ويمكن أن تسبب مشاكل بسهولة المستقبل.