isUniqueObject

Feb 13, 2009 at 12:42 PM
I got errors when trying to generate nHibernate mappings for my classes in this method since uniqueObject.BaseType returned null.

I changed it like this and it successfully created all the mappings from my assembly:

        private bool IsUniqueObject(Type type)
        {
            bool isUniqueObject = false;
            bool canExit = false;

            if (type.BaseType != null)
            {
                Type uniqueObject = type.BaseType;

                do
                {
                    canExit = (uniqueObject != null) && (uniqueObject.FullName != "System.Object");
                    isUniqueObject = uniqueObject.Name == "UniqueObject";
                    canExit = canExit | isUniqueObject;
                    if (uniqueObject.BaseType != null)
                        uniqueObject = uniqueObject.BaseType;
                    else
                    {
                        canExit = true;
                        isUniqueObject = true;
                    }
                }
                while (!canExit);
            }
            return isUniqueObject;
        }

Thanks,
  nisbus