# OpenAsset

> Opens the asset with the specified EntityId in its associated application, optionally at a line.

## Definition

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

## OpenAsset(EntityId, int)

Opens the asset with the specified EntityId in its associated application, optionally at a line.

```csharp
public static bool OpenAsset(EntityId entityId, int lineNumber)
```

### Parameters

**** (\[EntityId]\(/engine/7000.0/script-reference/unityengine/entityid)): The EntityId of the asset to open.**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): The line to open a text editor at, if the application supports it. The default value is -1, which opens the file at the start.

### Returns

| Type                                                          | Description                                              |
| ------------------------------------------------------------- | -------------------------------------------------------- |
| [bool](https://learn.microsoft.com/dotnet/api/system.boolean) | True if the asset opened successfully. Otherwise, false. |

### Remarks

Unity opens the asset in an external editor, image application, or modeling tool, depending on the type of asset.

## OpenAsset(int, int)

Opens the asset with the specified instance ID in its associated application.

> **Warning:**
>
> **Removed.** Please use OpenAsset(EntityId, int) with the EntityId parameter type instead.

```csharp
public static bool OpenAsset(int instanceID, int lineNumber)
```

### Parameters

**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): The instance ID of the asset to open.**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): The line to open a text editor at, if the application supports it.

### Returns

| Type                                                          | Description                                              |
| ------------------------------------------------------------- | -------------------------------------------------------- |
| [bool](https://learn.microsoft.com/dotnet/api/system.boolean) | True if the asset opened successfully. Otherwise, false. |

### Remarks

This overload is obsolete. Use the overload that takes an [EntityId](/engine/7000.0/script-reference/unityengine/entityid.md) instead.

## OpenAsset(EntityId, int, int)

Opens the asset with the specified EntityId in its associated application, at a line and column.

```csharp
public static bool OpenAsset(EntityId entityId, int lineNumber, int columnNumber)
```

### Parameters

**** (\[EntityId]\(/engine/7000.0/script-reference/unityengine/entityid)): The EntityId of the asset to open.**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): The line to open a text editor at, if the application supports it.**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): The column to open a text editor at, if the application supports it.

### Returns

| Type                                                          | Description                                              |
| ------------------------------------------------------------- | -------------------------------------------------------- |
| [bool](https://learn.microsoft.com/dotnet/api/system.boolean) | True if the asset opened successfully. Otherwise, false. |

### Remarks

Unity opens the asset in an external editor, image application, or modeling tool, depending on the type of asset.

## OpenAsset(int, int, int)

Opens the asset with the specified instance ID in its associated application.

> **Warning:**
>
> **Removed.** Please use OpenAsset(EntityId, int, int) with the EntityId parameter type instead.

```csharp
public static bool OpenAsset(int instanceID, int lineNumber, int columnNumber)
```

### Parameters

**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): The instance ID of the asset to open.**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): The line to open a text editor at, if the application supports it.**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): The column to open a text editor at, if the application supports it.

### Returns

| Type                                                          | Description                                              |
| ------------------------------------------------------------- | -------------------------------------------------------- |
| [bool](https://learn.microsoft.com/dotnet/api/system.boolean) | True if the asset opened successfully. Otherwise, false. |

### Remarks

This overload is obsolete. Use the overload that takes an [EntityId](/engine/7000.0/script-reference/unityengine/entityid.md) instead.

## OpenAsset(Object, int)

Opens an asset object in its associated application, optionally at a line.

```csharp
public static bool OpenAsset(Object target, int lineNumber)
```

### Parameters

**** (\[Object]\(/engine/7000.0/script-reference/unityengine/object)): The asset object to open.**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): The line to open a text editor at, if the application supports it. The default value is -1, which opens the file at the start.

### Returns

| Type                                                          | Description                                              |
| ------------------------------------------------------------- | -------------------------------------------------------- |
| [bool](https://learn.microsoft.com/dotnet/api/system.boolean) | True if the asset opened successfully. Otherwise, false. |

### Remarks

Unity opens the asset in an external editor, image application, or modeling tool, depending on the type of asset.

### Examples

```csharp
using UnityEditor;
using UnityEngine;

public class AssetDatabaseExamples : MonoBehaviour
{
    [MenuItem("AssetDatabase/Manually Check Textures")]
    static void OpenAssetExample()
    {
        for (var i = 0; i < 10; i++)
        {
            var texturePath = AssetDatabase.LoadMainAssetAtPath($"Assets/Textures/GroundTexture{i}.jpg");
            if(!EditorUtility.DisplayDialog($"Open next texture", $"Open GroundTexture{i}.jpg texture?", "Yes", "Cancel"))
                break;
            AssetDatabase.OpenAsset(texturePath);
        }
    }
}
```

## OpenAsset(Object, int, int)

Opens an asset object in its associated application, at a line and column.

```csharp
public static bool OpenAsset(Object target, int lineNumber, int columnNumber)
```

### Parameters

**** (\[Object]\(/engine/7000.0/script-reference/unityengine/object)): The asset object to open.**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): The line to open a text editor at, if the application supports it.**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): The column to open a text editor at, if the application supports it.

### Returns

| Type                                                          | Description                                              |
| ------------------------------------------------------------- | -------------------------------------------------------- |
| [bool](https://learn.microsoft.com/dotnet/api/system.boolean) | True if the asset opened successfully. Otherwise, false. |

### Remarks

Unity opens the asset in an external editor, image application, or modeling tool, depending on the type of asset.

## OpenAsset(Object\[])

Opens multiple assets with their associated applications.

```csharp
public static bool OpenAsset(Object[] objects)
```

### Parameters

**** (\[Object\[]]\(/engine/7000.0/script-reference/unityengine/object)): An array of asset objects to open.

### Returns

| Type                                                          | Description                                     |
| ------------------------------------------------------------- | ----------------------------------------------- |
| [bool](https://learn.microsoft.com/dotnet/api/system.boolean) | Returns true if all assets opened successfully. |

### Remarks

Opens the assets in an external editor, texture application or modelling tool depending on what type of asset it is.
