# IGrainRuntime Properties

[Type overview](/orleans/docs/api/csharp/microsoft.orleans.core.abstractions/orleans.runtime.igrainruntime/)

## GrainFactory {#grainfactory-92f344a1}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.core.abstractions/orleans.runtime.igrainruntime/properties/grainfactory-92f344a1/)

```csharp
public abstract IGrainFactory GrainFactory
```

Gets the grain factory.

## ServiceProvider {#serviceprovider-a72927ff}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.core.abstractions/orleans.runtime.igrainruntime/properties/serviceprovider-a72927ff/)

```csharp
public abstract IServiceProvider ServiceProvider
```

Gets the service provider.

## SiloAddress {#siloaddress-faa93596}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.core.abstractions/orleans.runtime.igrainruntime/properties/siloaddress-faa93596/)

```csharp
public abstract SiloAddress SiloAddress
```

Gets the silo address associated with this instance.

## SiloIdentity {#siloidentity-a2a5c3a6}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.core.abstractions/orleans.runtime.igrainruntime/properties/siloidentity-a2a5c3a6/)

```csharp
public abstract string SiloIdentity
```

Gets a unique identifier for the current silo. There is no semantic content to this string, but it may be useful for logging.

## TimeProvider {#timeprovider-fee72253}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.core.abstractions/orleans.runtime.igrainruntime/properties/timeprovider-fee72253/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Core.Abstractions/Runtime/IGrainRuntime.cs#L41)

```csharp
public virtual TimeProvider TimeProvider
```

Gets the time provider.

## TimerRegistry {#timerregistry-1c1f09b3}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.core.abstractions/orleans.runtime.igrainruntime/properties/timerregistry-1c1f09b3/)

```csharp
public abstract ITimerRegistry TimerRegistry
```

Gets the timer registry.
