> ## Documentation Index
> Fetch the complete documentation index at: https://easyaf.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# ProjectGraphConfigurator

> Applies a [ScaffoldProject](/api-reference/CloudNimble/EasyAF/Tools/Scaffolding/ScaffoldProject) description to a project file freshly created from an SDK te...

## Definition

**Assembly:** CloudNimble.EasyAF.Tools.dll

**Namespace:** CloudNimble.EasyAF.Tools.Scaffolding

**Inheritance:** System.Object

## Syntax

```csharp theme={"dark"}
CloudNimble.EasyAF.Tools.Scaffolding.ProjectGraphConfigurator
```

## Summary

Applies a [ScaffoldProject](/api-reference/CloudNimble/EasyAF/Tools/Scaffolding/ScaffoldProject) description to a project file freshly created from an SDK template.

## Remarks

The SDK templates always add `ImplicitUsings` and `Nullable` (the class library and console templates through
computed symbols a caller cannot set, the web template unconditionally), so they are removed here and the solution's
`Directory.Build.props` decides. Reference groups are written immediately after the leading `PropertyGroup`,
`PackageReference` first, then `ProjectReference`, entries alphabetical, versions as attributes.

## Constructors

### <Icon icon="hammer" iconType="duotone" color="#E0EC32" size={24} className="mr-2" /> .ctor

Initializes a new instance of the [ProjectGraphConfigurator](/api-reference/CloudNimble/EasyAF/Tools/Scaffolding/ProjectGraphConfigurator) class.

#### Syntax

```csharp theme={"dark"}
public ProjectGraphConfigurator(string solutionDirectory, string namespace)
```

#### Parameters

| Name | Type | Description |
| - | - | - |
| `solutionDirectory` | `string` | The solution directory that contains one folder per project. |
| `namespace` | `string` | The solution namespace that prefixes every project name. |

### <Icon icon="hammer" iconType="duotone" color="#E0EC32" size={24} className="mr-2" /> .ctor <Badge color="gray">Inherited</Badge>

<Note>Inherited from `object`</Note>

#### Syntax

```csharp theme={"dark"}
public Object()
```

## Properties

### <Icon icon="tag" iconType="duotone" color="#E0EC32" size={24} className="mr-2" /> Namespace

Gets the solution namespace that prefixes every project name.

#### Syntax

```csharp theme={"dark"}
public string Namespace { get; }
```

#### Property Value

Type: `string`

### <Icon icon="tag" iconType="duotone" color="#E0EC32" size={24} className="mr-2" /> SolutionDirectory

Gets the solution directory that contains one folder per project.

#### Syntax

```csharp theme={"dark"}
public string SolutionDirectory { get; }
```

#### Property Value

Type: `string`

## Methods

### <Icon icon="function" iconType="duotone" color="#E0EC32" size={24} className="mr-2" /> Configure

Configures the project file at `{SolutionDirectory}/{name}/{name}.csproj`.

#### Syntax

```csharp theme={"dark"}
public string Configure(CloudNimble.EasyAF.Tools.Scaffolding.ScaffoldProject project)
```

#### Parameters

| Name | Type | Description |
| - | - | - |
| `project` | `CloudNimble.EasyAF.Tools.Scaffolding.ScaffoldProject` | The project description. |

#### Returns

Type: `string`
The full path of the configured project file.

#### Exceptions

| Exception | Description |
| - | - |
| `FileNotFoundException` | Thrown when the project file does not exist. |
| `InvalidOperationException` | Thrown when the project file cannot be loaded. |

### <Icon icon="code-fork" iconType="duotone" color="#E0EC32" size={24} className="mr-2" /> Equals <Badge color="gray">Inherited</Badge> <Badge color="orange">Virtual</Badge>

<Note>Inherited from `object`</Note>

#### Syntax

```csharp theme={"dark"}
public virtual bool Equals(object obj)
```

#### Parameters

| Name | Type | Description |
| - | - | - |
| `obj` | `object?` | - |

#### Returns

Type: `bool`

### <Icon icon="thumbtack" iconType="duotone" color="#E0EC32" size={24} className="mr-2" /> Equals <Badge color="gray">Inherited</Badge>

<Note>Inherited from `object`</Note>

#### Syntax

```csharp theme={"dark"}
public static bool Equals(object objA, object objB)
```

#### Parameters

| Name | Type | Description |
| - | - | - |
| `objA` | `object?` | - |
| `objB` | `object?` | - |

#### Returns

Type: `bool`

### <Icon icon="code-fork" iconType="duotone" color="#E0EC32" size={24} className="mr-2" /> GetHashCode <Badge color="gray">Inherited</Badge> <Badge color="orange">Virtual</Badge>

<Note>Inherited from `object`</Note>

#### Syntax

```csharp theme={"dark"}
public virtual int GetHashCode()
```

#### Returns

Type: `int`

### <Icon icon="function" iconType="duotone" color="#E0EC32" size={24} className="mr-2" /> GetType <Badge color="gray">Inherited</Badge>

<Note>Inherited from `object`</Note>

#### Syntax

```csharp theme={"dark"}
public System.Type GetType()
```

#### Returns

Type: `System.Type`

### <Icon icon="function" iconType="duotone" color="#E0EC32" size={24} className="mr-2" /> MemberwiseClone <Badge color="gray">Inherited</Badge>

<Note>Inherited from `object`</Note>

#### Syntax

```csharp theme={"dark"}
protected internal object MemberwiseClone()
```

#### Returns

Type: `object`

### <Icon icon="thumbtack" iconType="duotone" color="#E0EC32" size={24} className="mr-2" /> ReferenceEquals <Badge color="gray">Inherited</Badge>

<Note>Inherited from `object`</Note>

#### Syntax

```csharp theme={"dark"}
public static bool ReferenceEquals(object objA, object objB)
```

#### Parameters

| Name | Type | Description |
| - | - | - |
| `objA` | `object?` | - |
| `objB` | `object?` | - |

#### Returns

Type: `bool`

### <Icon icon="code-fork" iconType="duotone" color="#E0EC32" size={24} className="mr-2" /> ToString <Badge color="gray">Inherited</Badge> <Badge color="orange">Virtual</Badge>

<Note>Inherited from `object`</Note>

#### Syntax

```csharp theme={"dark"}
public virtual string ToString()
```

#### Returns

Type: `string?`


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.