ReadSolution Class
Reads all the source files from a specified MSBuild solution. This module will be executed once and input documents will be ignored if a search path is specified. Otherwise, if a delegate is specified the module will be executed once per input document and the resulting output documents will be aggregated. Note that this requires the MSBuild tools to be installed (included with Visual Studio).
graph BT Type-->Base0["ReadWorkspace"] click Base0 "/api/Statiq.CodeAnalysis/ReadWorkspace" Base0-->Base1["ParallelSyncConfigModule<NormalizedPath>"] Base1-->Base2["ParallelConfigModule<NormalizedPath>"] Base2-->Base3["Module"] click Base3 "/api/Statiq.Common/Module" Base3-->Base4["object"] Type-.->Interface0["IModule"] click Interface0 "/api/Statiq.Common/IModule" Type-.->Interface1["IParallelModule"] click Interface1 "/api/Statiq.Common/IParallelModule" Type["ReadSolution"] class Type type-node

Syntax

public class ReadSolution : ReadWorkspace, IModule, IParallelModule

Remarks

The output of this module is similar to executing the ReadFiles module on all source files in the solution.

Constructors

Name Summary
ReadSolution(Config<NormalizedPath>) Reads the solution file at the specified path. This allows you to specify a different solution file depending on the input.
ReadSolution(Config<string>) Reads the solution file at the specified path. This allows you to specify a different solution file depending on the input.

Methods

Name Return Value Summary
AfterExecution(IExecutionContext, ExecutionOutputs) void
Called after each module execution.
Inherited from Module
AfterExecutionAsync(IExecutionContext, ExecutionOutputs) Task
Called after each module execution.
Inherited from Module
BeforeExecution(IExecutionContext) void
Called before each module execution.
Inherited from Module
BeforeExecutionAsync(IExecutionContext) Task
Called before each module execution.
Inherited from Module
ExecuteAsync(IExecutionContext) Task<IEnumerable<IDocument>>
This should not be called directly, instead call IExecutionContext.Execute() if you need to execute a module from within another module.
Inherited from Module
ExecuteConfig(IDocument, IExecutionContext, NormalizedPath) IEnumerable<IDocument>
Inherited from ReadWorkspace
Finally(IExecutionContext) void
Called after each module execution, even if an exception is thrown during execution.
Inherited from Module
FinallyAsync(IExecutionContext) Task
Called after each module execution, even if an exception is thrown during execution.
Inherited from Module
GetProjects(IExecutionContext, IFile) IEnumerable<Project>
Gets the projects in the workspace (solution or project).
WhereFile(Func<IFile, bool>) ReadWorkspace
Filters the source code file based on path.
Inherited from ReadWorkspace
WhereProject(Func<string, bool>) ReadWorkspace
Filters the project based on name.
Inherited from ReadWorkspace
WithExtensions(string[]) ReadWorkspace
Filters the source code files based on extension.
Inherited from ReadWorkspace

Extension Methods