Codevoid.Utilities.Reswinator
1.0.0
dotnet add package Codevoid.Utilities.Reswinator --version 1.0.0
NuGet\Install-Package Codevoid.Utilities.Reswinator -Version 1.0.0
<PackageReference Include="Codevoid.Utilities.Reswinator" Version="1.0.0" />
paket add Codevoid.Utilities.Reswinator --version 1.0.0
#r "nuget: Codevoid.Utilities.Reswinator, 1.0.0"
// Install Codevoid.Utilities.Reswinator as a Cake Addin #addin nuget:?package=Codevoid.Utilities.Reswinator&version=1.0.0 // Install Codevoid.Utilities.Reswinator as a Cake Tool #tool nuget:?package=Codevoid.Utilities.Reswinator&version=1.0.0
Reswinator
When using resw
files for resources in applications targetting the Windows App
SDK, there is no simple way to get strongly-typed access to the string resources
contained in those resw
files. This means you are left to access them similar
to this:
void DoSomething()
{
ResourceLoader loader = new ResourceLoader();
myThing.Content = load.GetString("ThingContent");
}
And hope you've typed it correctly.
In resx
files – the predecessor of resw
– Visual Studio would generate a
Resources.Designer.cs
whenever you edited the file which provided strongly
typed access to resources. This wasn't continued for resw
. Additionally that
file was committed to the repo, and not generated with every build.
Reswinator does exactly that -- generates a strongly typed accessor at build time.
Installation
Add the Rewsinator
nuget package
to your project.
Thats it!
Usage
Add a resw
to your project following the Microsoft guidelines
and build.
Thats it!
Q&A
What namespace does it generate the resource class into?
Whatever your projects RootNamespace
property is. If you haven't specified this
the namespace will be GeneratedResources
.
How does it know which resw to generate for when there are multiple langauges?
It uses the projects default langauge (as specified in the project), and looks
for only resw
files that match that language
What if I have multiple resw
files?
They're generated into different classes that match the file name. E.g.
Errors.resw
becomes <namspace>.Errors
. The default Resources.resw
will
always be Resources
.
Files that have .
them will have those removed to generate the class name for
those resources. If there is an existing resource wrapper class with that name,
a number will be suffixed to that class name
Do you support this other runtime that uses resw?
We only support Windows App SDK targets at this time. If you wish support for others, then file an issue. Pull requests are also welcome!
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Microsoft.CodeAnalysis.CSharp (>= 4.3.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
1.0.0 | 221 | 10/31/2022 |