DatabaseManager.ObjectViewModel.LoadChild C# (CSharp) Method

LoadChild() private method

private LoadChild ( DataMember member, object memberObj ) : void
member DataMember
memberObj object
return void
    void LoadChild(DataMember member, object memberObj)
    {
      bool listWithItems = false;
      if (member.Field != null && member.Field.FieldType.IsGenericType && member.Field.FieldType.GetGenericTypeDefinition() == typeof(List<>))
      {
        IList list = (IList)memberObj;
        listWithItems = list != null && list.Count > 0;
      }
      IOptimizedPersistable pObj = (IOptimizedPersistable)m_session.Open(m_objectId, false, null, false, 0, Int32.MaxValue);
      if (pObj != null)
      {
        if (member.Field != null && memberObj != null & (member.Field.FieldType.IsArray || member.HasId || listWithItems || member.WeakIOptimizedPersistableReference))
          base.Children.Add(new FieldViewModel(pObj, member, this, m_session));
        else
          base.Children.Add(new FieldViewModelNoExpansions(pObj, member, this, m_session));
      }
    }