Instantiate from prefab from assetbundle does not show up in scene altough activeInHierarchy=true

When I instantiate prefabs as in the unity documentation for LoadFromFile I do get the correct name as well as True for the active MonoBehaviours and furthermore it tells me activeInHierarchy=true but the gameobject is no where to find (GameObject.Find returns the gameobject and I simply am completly unable to see the object anywhere in the hierarchy or scene).

		foreach (var file in Directory.EnumerateFiles(Application.streamingAssetsPath))
			if (!file.Contains("bundle") || Path.HasExtension(file)) continue;
			var bundle = AssetBundle.LoadFromFile(file);
			foreach (var scene in bundle.GetAllScenePaths()) Debug.Log(scene);
			foreach (var asset in bundle.GetAllAssetNames())
				var prefab = bundle.LoadAsset<GameObject>(asset);

				foreach (var c in prefab.GetComponents<MonoBehaviour>())
				var p = new GameObject("parent");
				var go = Instantiate(prefab,, Quaternion.identity); = Path.GetFileNameWithoutExtension(asset);
				go.transform.parent = p.transform;
				var inscene = GameObject.Find(;
				//go.transform.parent = null;

Any help appreciated.

Edit1: I found out that one reason for this is that the prefab had custom MonoBehaviours attached.

Do I have to manually serialize everything I require to attach the Behaviours after loading the Asset from the AssetBundle and store this in a JSON? Is there no better way to ship something other than bare models and textures as Assets but something more concrete? How do others solve this, as this must be a very common requirement?

@MNNoxMortem Any luck? You did it or not? I am stuck in the same error. Any help appreciated.

,@MNNoxMortem Any Luck? Did you found any solution?