Hi gangs,

Here I cooked a quick patch to implement MetaType.DataMembers.
But I'm not sure if I did it right. Any ideas for missing points? :)

Atsushi Eno

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"DbLinq" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/dblinq?hl=en
-~----------~----~----~----~------~----~------~--~---

Index: src/DbLinq/Data/Linq/Mapping/AttributedMetaType.cs
===================================================================
--- src/DbLinq/Data/Linq/Mapping/AttributedMetaType.cs  (revision 913)
+++ src/DbLinq/Data/Linq/Mapping/AttributedMetaType.cs  (working copy)
@@ -49,6 +49,7 @@
             // associations and members
             var associationsList = new List<MetaAssociation>();
             var dataMembersList = new List<MetaDataMember>();
+            var persistentMembersList = new List<MetaDataMember>();
             var identityMembersList = new List<MetaDataMember>();
             foreach (var memberInfo in classType.GetMembers())
             {
@@ -65,12 +66,15 @@
                 {
                     var dataMember = new 
AttributedColumnMetaDataMember(memberInfo, column, this);
                     dataMembersList.Add(dataMember);
+                    if (String.IsNullOrEmpty(dataMember.Expression))
+                        persistentMembersList.Add(dataMember);
                     if (dataMember.IsPrimaryKey)
                         identityMembersList.Add(dataMember);
                 }
             }
             associations = new 
ReadOnlyCollection<MetaAssociation>(associationsList);
-            persistentDataMembers = new 
ReadOnlyCollection<MetaDataMember>(dataMembersList);
+            dataMembers = new 
ReadOnlyCollection<MetaDataMember>(dataMembersList);
+            persistentDataMembers = new 
ReadOnlyCollection<MetaDataMember>(persistentMembersList);
             identityMembers = new 
ReadOnlyCollection<MetaDataMember>(identityMembersList);
         }
 
@@ -91,9 +95,10 @@
             get { return true; }
         }
 
+        private readonly ReadOnlyCollection<MetaDataMember> dataMembers;
         public override ReadOnlyCollection<MetaDataMember> DataMembers
         {
-            get { throw new NotImplementedException(); }
+            get { return dataMembers; }
         }
 
         public override MetaDataMember DBGeneratedIdentityMember

Reply via email to