How to transfer an Array from one scene to another?

Need to move the Array GameObject_ов from one scene to another.
Tried using DontDestroyOnLoad, but in another scene, the objects disappear from the array.

Is there a way to do this without saving methods for the Json type, etc.?
Or just by saving in one scene and parsing in another?

public GameObject myCollectionCard; 
 public GameObject[] myPullCard;

 private void Awake()
{
 myPullCard = new GameObject[myCollectionCard.transform.childCount];
DontDestroyOnLoad(gameObject);
}

 public void GetMyPullCard()
{
 for (int i = 0; i < myPullCard.Length; i++)
{
 myPullCard[i] = myCollectionCard.transform.GetChild(i).gameObject;
 } 
 }
June 5th 19 at 21:57
2 answers
June 5th 19 at 21:59
Solution
Put all the objects as a child of a single rootObject. This rootObject doing DontDestroyOnLoad. It did hang the script in the array which is to drive all necessary objects.
After loading the scene and the array is intact, and objects.
The problem is that the objects I need are in Canvase -> Scrollview and I I can make it DontDestroyOnLoad - derrick39 commented on June 5th 19 at 22:02
Make the entire canvas DontDestroy. Note that mark DontDestroy only objects that are at the root of the scene! - nicklaus commented on June 5th 19 at 22:05
June 5th 19 at 22:01
An array of objects store in the object with DontDestroyOnLoad flag.
And how to do it? does not work. - derrick39 commented on June 5th 19 at 22:04

Find more questions by tags C#Unity Game Engine