Badral's personal blog
Интернет миний ертөнцийг хардаг цонх …

Posts Tagged ‘DateTimePicker control’

A problem with BindingManagerBase && DateTimePicker control

Tuesday, June 23rd, 2009

Анх VS-2003 Architect дээр бичигдсэн, жилийн өмнө VS-2005 дээр шилжүүлэгдэн ажиллаж байсан програмыг VS-2008 руу шилжүүлтэл өгөгдлийн заагчийг нааш цааш (forward, backward) гүйлгэдэг функцүүд ажиллахгүй болчихов. Шинжээч (debugger) ямарч алдаа өгөхгүй, өвөрмөц боловсруулагчид (exception handler) ямар ч зүйл мэдэгдэхгүй байсан тул эх кодыг дэмий шахуу маш удаан ширтэж байж дараах асуудал байсныг олж асуудлыг арилгав.
Өгөгдөл ба хэрэглэгчийн гадаргуун холболтыг BindingManagerBase ашиглаж хийсэн байв. Түүнд контролуудын холболт нэмэхдээ тухайн контролын DataBindings.Add методыг хэрэглэдэг. Жишээ нь DateTimePicker1 функцын хувьд

Me.DateTimePicker1.DataBindings.Add(New Binding(“Value”, Me.dsPerson, “expert_person.birthday”)) ‘failed

Дээр бичигдсэн мөрийг дараах байдлаар нэг параметер нэмж асуудлыг арилгав.

Me.DateTimePicker1.DataBindings.Add(New Binding(“Value”, Me.dsPerson, “expert_person.birthday”, true)) ‘works

Уг нь програм улам сайжран хөгждөг байтал Visual Studio-гийн чанар лав муудаад байх юм. Шинэ боломж нэмэгдэж, томорч мундаг болж байгааг би хэлээгүй. Тухайн хөгжүүлэгч хэрэгслийн кодын чанар муудаад байх шиг санагдав. Уг нь дээрх тохиолдолд ямар (тухайн фунцэд форматлах эсэхийг заагч сайн дурын параметер нэмэгдсэн бололтой юм) нэг сануулга Visual Studio Debugger өгөх ёстой. Эс бөгөөс программист хүн ийм алдааг олно гэдэг үнэхээр цаг идсэн далайд зүү эрхтэй адил асуудал.
Мөн MSSQL Server 2008 Server Management Studio дээр хүснэгтийн дизайн өөрчлөх үед нэг маш сонин утгатай алдаа (тухайн хүснэгтийг устган дахин шинээр үүсгэхэд эрх тань хүрэхгүй байна гэсэн утгатай) алдаа өгч байсан нь серверийн хэрэглэгчийн эрх болон өгөгдлийн сангийн эрхэд асуудал байгаа мэт ойлгогдох нь ямар ч программист хүнд илэрхий. Гэтэл Server Management Studio дээрх тохиргооны асуудал байсныг олох гэж бас хөөрхөн хэдэн минут алдчихав.
Майкрософтод овоо гайгүй програмистууд ажилладаг гэж боддог байсан чинь сүүлийн үед оюутнууд голдуу ажиллуулдаг болсон юм байх даа гэмээр алдаанууд харагдаад байх чинь юу вэ?