Version: Unity 7.0 Alpha (7000.0)
LanguageEnglish
  • C#

AssetDatabase.Contains

Suggest a change

Success!

Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.

Close

Submission failed

For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.

Close

Cancel

Declaration

public static bool Contains(Object obj);

Parameters

Parameter Description
obj The asset object to check.

Returns

bool True if the object corresponds to a file in the Assets folder. Otherwise, false.

Description

Checks whether an object is an asset.

An object is an asset if it's stored in a file in the Assets folder of the project. Objects that only exist in memory, such as GameObjects in a scene, aren't assets.

using UnityEditor;
using UnityEngine;

public class AssetDatabaseExamples : MonoBehaviour { [MenuItem("AssetDatabase/Contains Example")] static void ContainsExample() { //Material is created in memory and the Asset Database does not know about it var material = new Material(Shader.Find("Specular")); Debug.Log(AssetDatabase.Contains(material)); //Output will be false //Material is then saved to disk as an asset and therefore Asset Database knows that it exists AssetDatabase.CreateAsset(material, "Assets/Materials/MyMaterial.mat"); Debug.Log(AssetDatabase.Contains(material)); //Output will be true } }

Declaration

public static bool Contains(EntityId entityId);

Parameters

Parameter Description
entityId The EntityId of the asset to check.

Returns

bool True if the object corresponds to a file in the Assets folder. Otherwise, false.

Description

Checks whether the object with the specified EntityId is an asset.

An object is an asset if it's stored in a file in the Assets folder of the project. Objects that only exist in memory, such as GameObjects in a scene, aren't assets.


Obsolete Please use Contains(EntityId) with the EntityId type instead.

Declaration

public static bool Contains(int instanceID);

Parameters

Parameter Description
instanceID The instance ID of the asset to check.

Returns

bool True if the object corresponds to a file in the Assets folder. Otherwise, false.

Description

Checks whether the object with the specified instance ID is an asset.

This overload is obsolete. Use the overload that takes an EntityId instead.