سؤال

في C # و. NET، يمكن للمرء أن إنشاء DataView لا يتضمن سوى مجموعة <م> السليم فرعية من DataColumns من DataTable معين؟

في مجال الجبر العلائقي، واحد يعين RowFilter من أجل إجراء "اختيار" عملية (σ). كيف يمكن لأحد أن إجراء "الإسقاط" عملية (π)؟

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

المحلول

وأنت لا تستطيع أن تفعل ذلك، ولكن يمكنك إنشاء نسخة من الجدول مع الأعمدة فقط تريد:

DataView view = new DataView(table);
DataTable table2 = view.ToTable("FirstColumn", "SecondColumn", "ThirdColumn");

واختياريا يمكنك العودة الصفوف التي تحتوي على قيم مميزة للأعمدة المختارة:

DataView view = new DataView(table);
DataTable table2 = view.ToTable(true, "FirstColumn", "SecondColumn", "ThirdColumn");

نصائح أخرى

وكذلك أنا لا أرى أي سبب "الرغبة" للقيام بذلك ... تذكر، وDataView هو مجرد قائمة من المؤشرات إلى الصفوف في الجدول الأصلي، وليس هناك من الواضح أي وسيلة لإزالة الأعمدة من الجدول الأصلي ... على الأقل ليس دون أن يؤثر كل وظيفة أخرى باستخدام هذا الجدول ... فقط فقط استخدام الأعمدة التي تريد ...

وإنشاء dataview كما مبادلة من جدول واحد إلى جدول آخر، واستخدام dtswap كما مصدر البيانات.

DataView dw = new DataView(dtfee);
            DataTable dtswap = new DataTable();
            dtswap = dw.ToTable(true,"Fees", "FeeAmount", "Year", "CollectorName", "Month");

وDataSet وأنواع المرتبطة بها ليس لديهم القدرة على تنفيذ عمليات العلائقية.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top