# UrlSnapshot Methods

- Package: [Aspire.Hosting](/reference/api/csharp/aspire.hosting.md)
- Type: [UrlSnapshot](/reference/api/csharp/aspire.hosting/urlsnapshot.md)
- Kind: `Methods`
- Members: `8`

A snapshot of the URL.

## <Clone>$

- Name: `<Clone>$`
- Returns: [UrlSnapshot](/reference/api/csharp/aspire.hosting/urlsnapshot.md)

```csharp
public record UrlSnapshot
{
    public UrlSnapshot <Clone>$()
    {
        // ...
    }
}
```

## Deconstruct(string?, string, bool)

- Name: `Deconstruct(string?, string, bool)`
- Source: [GitHub](https://github.com/microsoft/aspire/blob/bd20f904cde09ecb9c9ae5116a6f13614bf2d7c2/src/Aspire.Hosting/ApplicationModel/CustomResourceSnapshot.cs#L219-L223)

```csharp
public record UrlSnapshot
{
    public void Deconstruct(
        out string? Name,
        out string Url,
        out bool IsInternal)
    {
        // ...
    }
}
```

## Parameters

- `Name` (`string?`)
- `Url` (`string`)
- `IsInternal` (`bool`)

## Equals(object?)

- Name: `Equals(object?)`
- Modifiers: `override`
- Returns: `bool`

Determines whether the specified object is equal to the current object.

```csharp
public record UrlSnapshot
{
    public override bool Equals(
        object? obj)
    {
        // ...
    }
}
```

## Parameters

- `obj` (`object?`)
  The object to compare with the current object.

## Returns

`bool` -- `true` if the specified object is equal to the current object; otherwise, `false`.

## Equals(UrlSnapshot?)

- Name: `Equals(UrlSnapshot?)`
- Returns: `bool`

Indicates whether the current object is equal to another object of the same type.

```csharp
public record UrlSnapshot
{
    public bool Equals(
        UrlSnapshot? other)
    {
        // ...
    }
}
```

## Parameters

- `other` ([UrlSnapshot?](/reference/api/csharp/aspire.hosting/urlsnapshot.md))
  An object to compare with this object.

## Returns

`bool` -- `true` if the current object is equal to the `other` parameter; otherwise, `false`.

## GetHashCode

- Name: `GetHashCode`
- Modifiers: `override`
- Returns: `int`

Serves as the default hash function.

```csharp
public record UrlSnapshot
{
    public override int GetHashCode()
    {
        // ...
    }
}
```

## Returns

`int` -- A hash code for the current object.

## op_Equality(UrlSnapshot?, UrlSnapshot?)

- Name: `op_Equality(UrlSnapshot?, UrlSnapshot?)`
- Modifiers: `static`
- Returns: `bool`

```csharp
public record UrlSnapshot
{
    public static bool operator ==(
        UrlSnapshot? left,
        UrlSnapshot? right)
    {
        // ...
    }
}
```

## Parameters

- `left` ([UrlSnapshot?](/reference/api/csharp/aspire.hosting/urlsnapshot.md))
- `right` ([UrlSnapshot?](/reference/api/csharp/aspire.hosting/urlsnapshot.md))

## op_Inequality(UrlSnapshot?, UrlSnapshot?)

- Name: `op_Inequality(UrlSnapshot?, UrlSnapshot?)`
- Modifiers: `static`
- Returns: `bool`

```csharp
public record UrlSnapshot
{
    public static bool operator !=(
        UrlSnapshot? left,
        UrlSnapshot? right)
    {
        // ...
    }
}
```

## Parameters

- `left` ([UrlSnapshot?](/reference/api/csharp/aspire.hosting/urlsnapshot.md))
- `right` ([UrlSnapshot?](/reference/api/csharp/aspire.hosting/urlsnapshot.md))

## ToString

- Name: `ToString`
- Modifiers: `override`
- Returns: `string`

Returns a string that represents the current object.

```csharp
public record UrlSnapshot
{
    public override string ToString()
    {
        // ...
    }
}
```

## Returns

`string` -- A string that represents the current object.
