ThisAssembly.Prerequisites 1.0.9

Install-Package ThisAssembly.Prerequisites -Version 1.0.9
dotnet add package ThisAssembly.Prerequisites --version 1.0.9
<PackageReference Include="ThisAssembly.Prerequisites" Version="1.0.9" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add ThisAssembly.Prerequisites --version 1.0.9
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: ThisAssembly.Prerequisites, 1.0.9"
#r directive can be used in F# Interactive, C# scripting and .NET Interactive. Copy this into the interactive tool or source code of the script to reference the package.
// Install ThisAssembly.Prerequisites as a Cake Addin
#addin nuget:?package=ThisAssembly.Prerequisites&version=1.0.9

// Install ThisAssembly.Prerequisites as a Cake Tool
#tool nuget:?package=ThisAssembly.Prerequisites&version=1.0.9
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

Ensures that referencing project satisfies the prerequisites for ThisAssembly, namely:

* MSBuild 16.8+: contains the Roslyn support for source generators
* C# 9.0 or greater language: it's the only language supported by Roslyn source generators at the moment.


Built from https://github.com/devlooped/ThisAssembly/tree/96dde2c67

  • .NETStandard 2.0

    • No dependencies.

NuGet packages (5)

Showing the top 5 NuGet packages that depend on ThisAssembly.Prerequisites:

Package Downloads
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/96dde2c67

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/96dde2c67

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

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/96dde2c67

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

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.0.9 1,255 10/21/2021
1.0.8 10,135 4/29/2021
1.0.7 2,242 3/16/2021
1.0.6 831 3/9/2021
1.0.5 3,033 1/30/2021
1.0.4 314 1/27/2021
1.0.3 1,433 12/15/2020
1.0.2 454 12/10/2020
1.0.1 428 12/10/2020
1.0.0 3,132 11/21/2020
1.0.0-rc.1 521 10/28/2020
1.0.0-rc 732 10/23/2020
1.0.0-beta 987 10/15/2020
1.0.0-alpha.3 255 10/8/2020
1.0.0-alpha.2 136 10/8/2020
1.0.0-alpha.1 138 10/8/2020
1.0.0-alpha 690 10/3/2020