I am the one who implemented the current version, and since I'm not sure of
what we will find in DataMembers and PersistentDataMembers, I can't really
oppose any argument to your modifications.
So that's OK for me :)
On Thu, Oct 16, 2008 at 15:58, Atsushi Eno <[EMAIL PROTECTED]> wrote:
> 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
>
> >
>
> 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
>
>
--
Pascal.
jabber/gtalk: [EMAIL PROTECTED]
msn: [EMAIL PROTECTED]
--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---