# LogConsistencyProviderAttribute

Package: [Microsoft.Orleans.Core.Abstractions](/orleans/docs/api/csharp/microsoft.orleans.core.abstractions/) 10.0.0

[NuGet package](https://www.nuget.org/packages/Microsoft.Orleans.Core.Abstractions) | [Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Core.Abstractions/Providers/ProviderGrainAttributes.cs#L42)

```csharp
public sealed class LogConsistencyProviderAttribute : Attribute
```

The [Orleans.Providers.LogConsistencyProvider] attribute is used to define which consistency provider to use for grains using the log-view state abstraction. 

Specifying [Orleans.Providers.LogConsistencyProvider] property is recommended for all grains that derive from LogConsistentGrain, such as JournaledGrain. If no [Orleans.Providers.LogConsistencyProvider] attribute is specified, then the runtime tries to locate one as follows. First, it looks for a "Default" provider in the configuration file, then it checks if the grain type defines a default. If a consistency provider cannot be located for this grain, then the grain will fail to load into the Silo.

## Constructors

- [LogConsistencyProviderAttribute](/orleans/docs/api/csharp/microsoft.orleans.core.abstractions/orleans.providers.logconsistencyproviderattribute/constructors/constructor-2bda5a79/)

## Properties

- [ProviderName](/orleans/docs/api/csharp/microsoft.orleans.core.abstractions/orleans.providers.logconsistencyproviderattribute/properties/providername-f4d3a8c8/)
