# ToString()

> Obtains the string representation of the unique object identifier.

## Definition

* **Type:** Method
* **Namespace:** [UnityEditor](/engine/6000.0/script-reference/unityeditor.md)
* **Assembly:** UnityEditor

```csharp
public override string ToString()
```

### Returns

| Type                                                           | Description                                        |
| -------------------------------------------------------------- | -------------------------------------------------- |
| [string](https://learn.microsoft.com/dotnet/api/system.string) | The string representation of the `GlobalObjectId`. |

### Remarks

The string representation of a `GlobalObjectId` can be serialized, then used at a later time to re-initialize a `GlobalObjectID` struct.

The format of the string representation of the ID is `GlobalObjectId_V1-{i}-{a}-{l}-{p}`, where:

* `{i}` is the identifier type represented by an integer (0 = Null, 1 = Imported Asset, 2 = Scene Object, 3 = Source Asset).
* `{a}` is the asset GUID. This is a globally unique identifier that Unity assigns to every newly discovered asset. For more information, refer to [Asset Metadata](/engine/6000.0/manual/assets-and-media/import-assets/asset-metadata.md) in the Manual.
* `{l}` is the local file ID of the object. For objects inside a prefab instance, this ID is the local file ID of the original source object that is part of the prefab. For more information, refer to [GlobalObjectId.targetObjectId](/engine/6000.0/script-reference/unityeditor/globalobjectid/targetobjectid.md).
* `{p}` is the local file ID of the prefab instance of the object. If the object isn't part of a prefab instance, then `{p}` is `0`.

**Note**: Actual local file IDs are signed 64-bit values and can be negative. But in a `GlobalObjectId`, these values are cast to [GlobalObjectId.targetObjectId](/engine/6000.0/script-reference/unityeditor/globalobjectid/targetobjectid.md), which is an unsigned 64-bit value (`ulong`). Therefore, a negative local file ID will lose its sign when saved to a `GlobalObjectId` and you should not rely on the value of `targetObjectId`, or the `{l}` element from the string representation of a GlobalObjectID, to find an object.

Additional Resources: [GlobalObjectId.TryParse](/engine/6000.0/script-reference/unityeditor/globalobjectid/tryparse.md)
