سؤال

عادة إذا كنت أربط ObjectDataSource إلى GridView ولدي TemplateColumn الذي يحتوي على Evaly inhe وكنت لاغيا، يمكنني فقط وضع ".tosting ()" يعمل بشكل جيد. لسبب ما، هذا لا يعمل نفسه عند استخدام LinQ إلى SQL.

أنا في الأصل كنت تستخدم ملفات XSD لدال مع BLL مخصص. ربطت ذلك إلى GridView مع ObjectDataSource. أنا في منتصف تبديل ملفات XSD مع LinQ إلى SQL وكل شيء يعمل تماما مثل الطريقة القديمة باستثناء الأعمدة التي يمكن أن تحتوي على قيم فارغة.

وقد أي شخص يركض هذا من قبل وإذا كان الأمر كذلك، كيف يمكنني العمل في هذه المشكلة؟

هل كانت مفيدة؟

المحلول

معظم كل ما يعوده LINQ أنواع nullable.. وبعد لذلك في التعبيرات الملزمة تحتاج إلى استخدام GetValueOrdefault (). Tostring () أو الجديد "؟؟" غير فارغ من المشغل الفاتين بدلا من مجرد Tostring القديم العادي (). آمل أن يساعد هذا. افحص هذا حلقة الوصل خارج الى.

مثال:

// this will output the int if not null otherwise an empty string.
<%# (int?)Eval("MyIntegerField") ?? "" %> 
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top