Bug Report B133478
Visible to All Users

The TypesInfo class cannot identify the default member for a System.Data.DataRelationCollection object

created 16 years ago

Hi,
We`ve wanted to convert our project to work with XAF 8.3.4 but we cannot launch our application. Maybe it`s because we use System.Data.DataRelationCollection in our code?
Could you give us some workaround?
Thanks
Actual Results:
The error occured:
     Type: ArgumentException
     Message: The "System.Data.DataRelationCollection" type declared with the DefaultProperty value of "Table" doesn't contain this property or the property is declared as private
     Data: 0 entries
     Stack trace:
   w DevExpress.ExpressApp.DC.TypesInfo.CalcDefaultMember(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypesInfo.InitMembersInfo(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypeInfo.NeedAllMembers()
   w DevExpress.ExpressApp.DC.TypeInfo.get_OwnMembers()
   w DevExpress.ExpressApp.DC.TypesInfo.EnsureReferencesForEntity(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypesInfo.InitMembersInfo(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypeInfo.NeedAllMembers()
   w DevExpress.ExpressApp.DC.TypeInfo.get_OwnMembers()
   w DevExpress.ExpressApp.DC.TypesInfo.EnsureReferencesForEntity(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypesInfo.InitMembersInfo(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypeInfo.NeedAllMembers()
   w DevExpress.ExpressApp.DC.TypeInfo.get_OwnMembers()
   w DevExpress.ExpressApp.DC.TypesInfo.EnsureReferencesForEntity(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypesInfo.InitMembersInfo(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypeInfo.NeedAllMembers()
   w DevExpress.ExpressApp.DC.TypeInfo.get_OwnMembers()
   w DevExpress.ExpressApp.DC.TypesInfo.EnsureReferencesForEntity(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypesInfo.RefreshMembersInfo(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypesInfo.RefreshInfo(ITypeInfo info)
   w DevExpress.ExpressApp.DC.TypesInfo.RegisterEntity(Type entityType)
   w DevExpress.ExpressApp.DC.TypesInfo.EnsureReferencesForEntity(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypesInfo.RegisterType(Type type)
   w DevExpress.ExpressApp.DC.TypesInfo.FindTypeInfo(Type type)
   w DevExpress.ExpressApp.DC.XafMemberInfo.get_MemberTypeInfo()
   w DevExpress.ExpressApp.DC.XafMemberInfo.DevExpress.ExpressApp.DC.IMemberInfo.get_MemberTypeInfo()
   w DevExpress.ExpressApp.DC.TypesInfo.EnsureReferencesForEntity(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypesInfo.RegisterType(Type type)
   w DevExpress.ExpressApp.DC.TypesInfo.FindTypeInfo(Type type)
   w DevExpress.ExpressApp.DC.XafMemberInfo.get_MemberTypeInfo()
   w DevExpress.ExpressApp.DC.XafMemberInfo.DevExpress.ExpressApp.DC.IMemberInfo.get_MemberTypeInfo()
   w DevExpress.ExpressApp.DC.TypesInfo.EnsureReferencesForEntity(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypesInfo.InitMembersInfo(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypeInfo.NeedAllMembers()
   w DevExpress.ExpressApp.DC.TypeInfo.get_OwnMembers()
   w DevExpress.ExpressApp.DC.TypesInfo.EnsureReferencesForEntity(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypesInfo.RegisterType(Type type)
   w DevExpress.ExpressApp.DC.TypesInfo.FindTypeInfo(Type type)
   w DevExpress.ExpressApp.DC.XafMemberInfo.get_MemberTypeInfo()
   w DevExpress.ExpressApp.DC.XafMemberInfo.DevExpress.ExpressApp.DC.IMemberInfo.get_MemberTypeInfo()
   w DevExpress.ExpressApp.DC.TypesInfo.EnsureReferencesForEntity(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypesInfo.RefreshMembersInfo(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypesInfo.RefreshInfo(ITypeInfo info)
   w DevExpress.ExpressApp.DC.TypesInfo.RegisterEntity(Type entityType)
   w DevExpress.ExpressApp.DC.TypesInfo.EnsureReferencesForEntity(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypesInfo.RefreshMembersInfo(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypesInfo.RefreshInfo(ITypeInfo info)
   w DevExpress.ExpressApp.DC.TypesInfo.RegisterEntity(Type entityType)
   w DevExpress.ExpressApp.DC.TypesInfo.EnsureReferencesForEntity(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypesInfo.RefreshMembersInfo(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypesInfo.RefreshInfo(ITypeInfo info)
   w DevExpress.ExpressApp.DC.TypesInfo.RegisterEntity(Type entityType)
   w DevExpress.ExpressApp.DC.TypesInfo.EnsureReferencesForEntity(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypesInfo.RegisterType(Type type)
   w DevExpress.ExpressApp.DC.TypesInfo.FindTypeInfo(Type type)
   w DevExpress.ExpressApp.DC.XafMemberInfo.get_MemberTypeInfo()
   w DevExpress.ExpressApp.DC.XafMemberInfo.DevExpress.ExpressApp.DC.IMemberInfo.get_MemberTypeInfo()
   w DevExpress.ExpressApp.DC.TypesInfo.EnsureReferencesForEntity(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypesInfo.InitMembersInfo(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypeInfo.NeedAllMembers()
   w DevExpress.ExpressApp.DC.TypeInfo.get_OwnMembers()
   w DevExpress.ExpressApp.DC.TypesInfo.EnsureReferencesForEntity(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypesInfo.RegisterType(Type type)
   w DevExpress.ExpressApp.DC.TypesInfo.FindTypeInfo(Type type)
   w DevExpress.ExpressApp.DC.TypesInfo.InitBaseTypeInfo(TypeInfo typeInfo, ITypeInfoSource source)
   w DevExpress.ExpressApp.DC.TypesInfo.RegisterType(Type type)
   w DevExpress.ExpressApp.DC.TypesInfo.FindTypeInfo(Type type)
   w DevExpress.ExpressApp.DC.TypesInfo.InitBaseTypeInfo(TypeInfo typeInfo, ITypeInfoSource source)
   w DevExpress.ExpressApp.DC.TypesInfo.RegisterType(Type type)
   w DevExpress.ExpressApp.DC.TypesInfo.FindTypeInfo(Type type)
   w DevExpress.ExpressApp.DC.XafMemberInfo.get_MemberTypeInfo()
   w DevExpress.ExpressApp.DC.XafMemberInfo.DevExpress.ExpressApp.DC.IMemberInfo.get_MemberTypeInfo()
   w DevExpress.ExpressApp.DC.TypesInfo.EnsureReferencesForEntity(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypesInfo.InitMembersInfo(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypeInfo.NeedAllMembers()
   w DevExpress.ExpressApp.DC.TypeInfo.get_OwnMembers()
   w DevExpress.ExpressApp.DC.TypesInfo.EnsureReferencesForEntity(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypesInfo.InitMembersInfo(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypeInfo.NeedAllMembers()
   w DevExpress.ExpressApp.DC.TypeInfo.FindMember(String name)
   w DevExpress.ExpressApp.DC.TypeInfo.FindMember(String name)
   w DevExpress.ExpressApp.DC.Xpo.XpoTypeInfoSource.EnumMembers(TypeInfo info, EnumMembersHandler handler)
   w DevExpress.ExpressApp.DC.TypesInfo.InitMembers(TypeInfo typeInfo, ITypeInfoSource source)
   w DevExpress.ExpressApp.DC.TypesInfo.InitMembersInfo(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypeInfo.NeedAllMembers()
   w DevExpress.ExpressApp.DC.TypeInfo.FindMember(String name)
   w DevExpress.ExpressApp.DC.TypeInfo.FindMember(String name)
   w DevExpress.ExpressApp.DC.Xpo.XpoTypeInfoSource.EnumMembers(TypeInfo info, EnumMembersHandler handler)
   w DevExpress.ExpressApp.DC.TypesInfo.InitMembers(TypeInfo typeInfo, ITypeInfoSource source)
   w DevExpress.ExpressApp.DC.TypesInfo.InitMembersInfo(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypeInfo.NeedAllMembers()
   w DevExpress.ExpressApp.DC.TypeInfo.FindMember(String name)
   w DevExpress.ExpressApp.DC.TypeInfo.FindMember(String name)
   w DevExpress.ExpressApp.DC.Xpo.XpoTypeInfoSource.EnumMembers(TypeInfo info, EnumMembersHandler handler)
   w DevExpress.ExpressApp.DC.TypesInfo.InitMembers(TypeInfo typeInfo, ITypeInfoSource source)
   w DevExpress.ExpressApp.DC.TypesInfo.InitMembersInfo(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypeInfo.NeedAllMembers()
   w DevExpress.ExpressApp.DC.TypeInfo.get_OwnMembers()
   w DevExpress.ExpressApp.DC.TypesInfo.EnsureReferencesForEntity(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypesInfo.RefreshMembersInfo(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypesInfo.RefreshInfo(ITypeInfo info)
   w DevExpress.ExpressApp.DC.TypesInfo.RegisterEntity(Type entityType)
   w DevExpress.ExpressApp.DC.TypesInfo.EnsureReferencesForEntity(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypesInfo.RegisterType(Type type)
   w DevExpress.ExpressApp.DC.TypesInfo.FindTypeInfo(Type type)
   w DevExpress.ExpressApp.DC.XafMemberInfo.get_MemberTypeInfo()
   w DevExpress.ExpressApp.DC.XafMemberInfo.DevExpress.ExpressApp.DC.IMemberInfo.get_MemberTypeInfo()
   w DevExpress.ExpressApp.DC.TypesInfo.EnsureReferencesForEntity(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypesInfo.InitMembersInfo(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypeInfo.NeedAllMembers()
   w DevExpress.ExpressApp.DC.TypeInfo.get_OwnMembers()
   w DevExpress.ExpressApp.DC.TypesInfo.EnsureReferencesForEntity(TypeInfo typeInfo)
   w DevExpress.ExpressApp.DC.TypesInfo.RegisterType(Type type)
   w DevExpress.ExpressApp.DC.TypesInfo.FindTypeInfo(Type type)
   w DevExpress.ExpressApp.DC.TypesInfo.InitBaseTypeInfo(TypeInfo typeInfo, ITypeInfoSource source)
   w DevExpress.ExpressApp.DC.TypesInfo.RegisterType(Type type)
   w DevExpress.ExpressApp.DC.TypesInfo.FindTypeInfo(Type type)
   w DevExpress.ExpressApp.DC.TypesInfo.InitBaseTypeInfo(TypeInfo typeInfo, ITypeInfoSource source)
   w DevExpress.ExpressApp.DC.TypesInfo.RegisterType(Type type)
   w DevExpress.ExpressApp.DC.TypesInfo.FindTypeInfo(Type type)
   w DevExpress.ExpressApp.DC.TypesInfo.RefreshInfo(Type type)

InnerException is null

Show previous comments (2)
Dennis Garavsky (DevExpress) 16 years ago

    Hello Lukasz,
    Thank you for the update. I have checked the DataRelationCollection class in the Reflector. It should have the Table property as the default one. However, for some reason, it doesn't have this property even in its descendants. I have only found a private "table" field in one of the descendant classes.
    I think that the fact that you have received an error message is our fault, because generally we do not calculate default members for "non-our" classes and should do that only for our persistent classes.
    We are working on this issue and will fix it ASAP.
    Thank you for your patience,
    Dennis

      Hi,
      Thank you for fixing this bug. When can we expect the Public Fix for 8.3.5?

      Dennis Garavsky (DevExpress) 16 years ago

        Hello Lukasz,
        Thank you for the update on this, and please accept our apologies for the delay in providing you with a public fix. We will publish it once we have our internal builds tested and passed, because we cannot provide you with a broken build. It may require some time, because this will be a daily build.
        Thanks,
        Dennis

        Disclaimer: The information provided on DevExpress.com and affiliated web properties (including the DevExpress Support Center) is provided "as is" without warranty of any kind. Developer Express Inc disclaims all warranties, either express or implied, including the warranties of merchantability and fitness for a particular purpose. Please refer to the DevExpress.com Website Terms of Use for more information in this regard.

        Confidential Information: Developer Express Inc does not wish to receive, will not act to procure, nor will it solicit, confidential or proprietary materials and information from you through the DevExpress Support Center or its web properties. Any and all materials or information divulged during chats, email communications, online discussions, Support Center tickets, or made available to Developer Express Inc in any manner will be deemed NOT to be confidential by Developer Express Inc. Please refer to the DevExpress.com Website Terms of Use for more information in this regard.