ThisAssembly.Prerequisites 1.0.0-alpha

Ensures that referencing project satisfies the prerequisites for ThisAssembly, namely: * MSBuild 16.8+: contains the Roslyn support for source generators * C# language: it's the only language supported by Roslyn source generators at the moment.

Showing the top 20 packages that depend on ThisAssembly.Prerequisites.

Packages Downloads
ThisAssembly.Project
This package generates a static `ThisAssembly.Project` class with public constants exposing project properties that have been opted into this mechanism by adding them as `ProjectProperty` MSBuild items in project file, such as: <PropertyGroup> <Foo>Bar</Foo> </PropertyGroup> <ItemGroup> <ProjectProperty Include="Foo" /> </ItemGroup> A corresponding `ThisAssembly.Project.Foo` constant with the value `Bar` is provided. Generated code: C#: partial class ThisAssembly { public static partial class Project { public const string Foo = "Bar"; } }
27
ThisAssembly.Strings
** C# 9.0 ONLY ** This package generates a static `ThisAssembly.Strings` class with public constants exposing string resources in .resx files or methods with the right number of parameters for strings that use formatting parameters. In addition, it groups constants and methods in nested classes according to an optional underscore separator to organize strings. For example, *User_InvalidCredentials* can be accessed with *ThisAssembly.Strings.User.InvalidCredentials* if it contains a simple string, or as a method with the right number of parametres if its value has a format string. Finally, format strings can use named parameters too to get more friendly parameter names, such as "Hello {name}". Built from https://github.com/devlooped/ThisAssembly/tree/96dde2c67
27
ThisAssembly.Strings
** C# 9.0 ONLY ** This package generates a static `ThisAssembly.Strings` class with public constants exposing string resources in .resx files or methods with the right number of parameters for strings that use formatting parameters. In addition, it groups constants and methods in nested classes according to an optional underscore separator to organize strings. For example, *User_InvalidCredentials* can be accessed with *ThisAssembly.Strings.User.InvalidCredentials* if it contains a simple string, or as a method with the right number of parametres if its value has a format string. Finally, format strings can use named parameters too to get more friendly parameter names, such as "Hello {name}". Built from https://github.com/devlooped/ThisAssembly/tree/cb21dfaef
27
ThisAssembly.Project
** C# 9.0 ONLY ** This package generates a static `ThisAssembly.Project` class with public constants exposing project properties that have been opted into this mechanism by adding them as `ProjectProperty` MSBuild items in project file, such as: <PropertyGroup> <Foo>Bar</Foo> </PropertyGroup> <ItemGroup> <ProjectProperty Include="Foo" /> </ItemGroup> A corresponding `ThisAssembly.Project.Foo` constant with the value `Bar` is provided. Generated code: C#: partial class ThisAssembly { public static partial class Project { public const string Foo = "Bar"; } } Built from https://github.com/devlooped/ThisAssembly/tree/1af5a25ed
26
ThisAssembly.Strings
** C# 9.0 ONLY ** This package generates a static `ThisAssembly.Strings` class with public constants exposing string resources in .resx files or methods with the right number of parameters for strings that use formatting parameters. In addition, it groups constants and methods in nested classes according to an optional underscore separator to organize strings. For example, *User_InvalidCredentials* can be accessed with *ThisAssembly.Strings.User.InvalidCredentials* if it contains a simple string, or as a method with the right number of parametres if its value has a format string. Finally, format strings can use named parameters too to get more friendly parameter names, such as "Hello {name}". Built from https://github.com/kzu/ThisAssembly/tree/9fb55b8d0
26
ThisAssembly.Metadata
** C# 9.0 ONLY ** This package generates a static `ThisAssembly.Metadata` class with public constants exposing each `[System.Reflection.AssemblyMetadata(..)]` defined for the project, such as when using .NET 5.0+ support for `AssemblyMetadata` MSBuild items. So for an attribute like: [assembly: System.Reflection.AssemblyMetadataAttribute("Foo", "Bar")] A corresponding `ThisAssembly.Metadata.Foo` constant with the value `Bar` is provided. The metadata attribute can alternatively be declared using MSBuild in the project (for .NET 5.0+ projects): <ItemGroup> <AssemblyMetadata Include="Foo" Value="Bar" /> </ItemGroup> Generated code: C#: partial class ThisAssembly { public static partial class Metadata { public const string Foo = "Bar"; } } Built from https://github.com/devlooped/ThisAssembly/tree/1af5a25ed
25
ThisAssembly.Strings
** C# 9.0+ ONLY ** This package generates a static `ThisAssembly.Strings` class with public constants exposing string resources in .resx files or methods with the right number of parameters for strings that use formatting parameters. In addition, it groups constants and methods in nested classes according to an optional underscore separator to organize strings. For example, *User_InvalidCredentials* can be accessed with *ThisAssembly.Strings.User.InvalidCredentials* if it contains a simple string, or as a method with the right number of parametres if its value has a format string. Finally, format strings can use named parameters too to get more friendly parameter names, such as "Hello {name}".
25
ThisAssembly.Strings
** C# 9.0 ONLY ** This package generates a static `ThisAssembly.Strings` class with public constants exposing string resources in .resx files or methods with the right number of parameters for strings that use formatting parameters. In addition, it groups constants and methods in nested classes according to an optional underscore separator to organize strings. For example, *User_InvalidCredentials* can be accessed with *ThisAssembly.Strings.User.InvalidCredentials* if it contains a simple string, or as a method with the right number of parametres if its value has a format string. Finally, format strings can use named parameters too to get more friendly parameter names, such as "Hello {name}". Built from /tree/97da74d9e
25
ThisAssembly.Project
** C# 9.0 ONLY ** This package generates a static `ThisAssembly.Project` class with public constants exposing project properties that have been opted into this mechanism by adding them as `ProjectProperty` MSBuild items in project file, such as: <PropertyGroup> <Foo>Bar</Foo> </PropertyGroup> <ItemGroup> <ProjectProperty Include="Foo" /> </ItemGroup> A corresponding `ThisAssembly.Project.Foo` constant with the value `Bar` is provided. Generated code: C#: partial class ThisAssembly { public static partial class Project { public const string Foo = "Bar"; } } Built from https://github.com/devlooped/ThisAssembly/tree/96dde2c67
25
ThisAssembly.Project
** C# 9.0 ONLY ** This package generates a static `ThisAssembly.Project` class with public constants exposing project properties that have been opted into this mechanism by adding them as `ProjectProperty` MSBuild items in project file, such as: <PropertyGroup> <Foo>Bar</Foo> </PropertyGroup> <ItemGroup> <ProjectProperty Include="Foo" /> </ItemGroup> A corresponding `ThisAssembly.Project.Foo` constant with the value `Bar` is provided. Generated code: C#: partial class ThisAssembly { public static partial class Project { public const string Foo = "Bar"; } } Built from https://github.com/kzu/ThisAssembly/tree/c7bb40af9
25
ThisAssembly.Metadata
This package generates a static `ThisAssembly.Metadata` class with public constants exposing each `[System.Reflection.AssemblyMetadata(..)]` defined for the project, such as when using .NET 5.0+ support for `AssemblyMetadata` MSBuild items. So for an attribute like: [assembly: System.Reflection.AssemblyMetadataAttribute("Foo", "Bar")] A corresponding `ThisAssembly.Metadata.Foo` constant with the value `Bar` is provided. The metadata attribute can alternatively be declared using MSBuild in the project (for .NET 5.0+ projects): <ItemGroup> <AssemblyMetadata Include="Foo" Value="Bar" /> </ItemGroup> Generated code: C#: partial class ThisAssembly { public static partial class Metadata { public const string Foo = "Bar"; } } VB: Namespace Global Partial Class ThisAssembly Partial Class Metadata Public Const Foo = "Bar" End Class End Class End Namespace F#: module internal ThisAssembly module public Metadata = [<Literal>] let public Foo = @"Bar"
25
ThisAssembly.Constants
** C# 9.0 ONLY ** This package generates a static `ThisAssembly.Constants` class with public constants for each Constant MSBuild item in the project. For example: <ItemGroup> <Constant Include="Foo.Bar" Value="Baz" /> </ItemGroup> Results in a corresponding `ThisAssembly.Constants.Foo.Bar` constant with the value `Baz`: Generated code: C#: partial class ThisAssembly { public static partial class Constants { public static partial class Foo { public const string Bar = "Baz"; } } } Built from https://github.com/devlooped/ThisAssembly/tree/14cf2358e
25
ThisAssembly.Strings
** C# 9.0 ONLY ** This package generates a static `ThisAssembly.Strings` class with public constants exposing string resources in .resx files or methods with the right number of parameters for strings that use formatting parameters. In addition, it groups constants and methods in nested classes according to an optional underscore separator to organize strings. For example, *User_InvalidCredentials* can be accessed with *ThisAssembly.Strings.User.InvalidCredentials* if it contains a simple string, or as a method with the right number of parametres if its value has a format string. Finally, format strings can use named parameters too to get more friendly parameter names, such as "Hello {name}". Built from https://github.com/kzu/ThisAssembly/tree/c7bb40af9
25
ThisAssembly.Strings
** C# 9.0 ONLY ** This package generates a static `ThisAssembly.Strings` class with public constants exposing string resources in .resx files or methods with the right number of parameters for strings that use formatting parameters. In addition, it groups constants and methods in nested classes according to an optional underscore separator to organize strings. For example, *User_InvalidCredentials* can be accessed with *ThisAssembly.Strings.User.InvalidCredentials* if it contains a simple string, or as a method with the right number of parametres if its value has a format string. Finally, format strings can use named parameters too to get more friendly parameter names, such as "Hello {name}". Built from https://github.com/devlooped/ThisAssembly/tree/1af5a25ed
25
ThisAssembly.Strings
This package generates a static `ThisAssembly.Strings` class with public constants exposing string resources in .resx files or methods with the right number of parameters for strings that use formatting parameters. In addition, it groups constants and methods in nested classes according to an optional underscore separator to organize strings. For example, *User_InvalidCredentials* can be accessed with *ThisAssembly.Strings.User.InvalidCredentials* if it contains a simple string, or as a method with the right number of parametres if its value has a format string. Finally, format strings can use named parameters too to get more friendly parameter names, such as "Hello {name}".
25
ThisAssembly.Metadata
** C# 9.0 ONLY ** This package generates a static `ThisAssembly.Metadata` class with public constants exposing each `[System.Reflection.AssemblyMetadata(..)]` defined for the project, such as when using .NET 5.0+ support for `AssemblyMetadata` MSBuild items. So for an attribute like: [assembly: System.Reflection.AssemblyMetadataAttribute("Foo", "Bar")] A corresponding `ThisAssembly.Metadata.Foo` constant with the value `Bar` is provided. The metadata attribute can alternatively be declared using MSBuild in the project (for .NET 5.0+ projects): <ItemGroup> <AssemblyMetadata Include="Foo" Value="Bar" /> </ItemGroup> Generated code: C#: partial class ThisAssembly { public static partial class Metadata { public const string Foo = "Bar"; } }
25
ThisAssembly.Project
** C# 9.0 ONLY ** This package generates a static `ThisAssembly.Project` class with public constants exposing project properties that have been opted into this mechanism by adding them as `ProjectProperty` MSBuild items in project file, such as: <PropertyGroup> <Foo>Bar</Foo> </PropertyGroup> <ItemGroup> <ProjectProperty Include="Foo" /> </ItemGroup> A corresponding `ThisAssembly.Project.Foo` constant with the value `Bar` is provided. Generated code: C#: partial class ThisAssembly { public static partial class Project { public const string Foo = "Bar"; } }
25
ThisAssembly.AssemblyInfo
This package generates a static `ThisAssembly.Info` class with public constants exposing the following attribute values generated by default for SDK style projects: * AssemblyConfigurationAttribute * AssemblyCompanyAttribute * AssemblyTitleAttribute * AssemblyProductAttribute * AssemblyVersionAttribute * AssemblyInformationalVersionAttribute * AssemblyFileVersionAttribute If your project includes these attributes by other means, they will still be emitted properly on the `ThisAssembly.Info` class.
25
ThisAssembly.AssemblyInfo
** C# 9.0 ONLY ** This package generates a static `ThisAssembly.Info` class with public constants exposing the following attribute values generated by default for SDK style projects: * AssemblyConfigurationAttribute * AssemblyCompanyAttribute * AssemblyTitleAttribute * AssemblyProductAttribute * AssemblyVersionAttribute * AssemblyInformationalVersionAttribute * AssemblyFileVersionAttribute If your project includes these attributes by other means, they will still be emitted properly on the `ThisAssembly.Info` class. Built from https://github.com/devlooped/ThisAssembly/tree/14cf2358e
25

This package has no dependencies.

Version Downloads Last updated
1.2.11 24 06/16/2026
1.2.10 18 06/16/2026
1.2.9 19 06/16/2026
1.2.8 23 06/16/2026
1.2.7 24 06/16/2026
1.2.6 21 06/16/2026
1.2.5 21 06/16/2026
1.2.4 22 06/16/2026
1.2.3 21 06/16/2026
1.2.2 23 06/16/2026
1.2.1 20 06/16/2026
1.2.0 20 06/16/2026
1.2.0-rc.1 23 06/16/2026
1.2.0-rc 23 06/16/2026
1.2.0-beta 22 06/16/2026
1.1.3 22 06/16/2026
1.1.2 20 06/15/2026
1.1.1 19 06/16/2026
1.1.1-beta 19 06/16/2026
1.1.0 23 06/16/2026
1.0.10 20 06/16/2026
1.0.9 20 06/16/2026
1.0.8 20 06/16/2026
1.0.7 23 06/16/2026
1.0.6 22 06/16/2026
1.0.5 24 06/16/2026
1.0.4 24 06/16/2026
1.0.3 25 06/16/2026
1.0.2 22 06/16/2026
1.0.1 20 06/16/2026
1.0.0 21 06/16/2026
1.0.0-rc.1 23 06/16/2026
1.0.0-rc 20 06/16/2026
1.0.0-beta 23 06/16/2026
1.0.0-alpha.3 21 06/16/2026
1.0.0-alpha.2 25 06/16/2026
1.0.0-alpha.1 24 06/16/2026
1.0.0-alpha 24 06/16/2026