Skip to content

WPF: Build fails in wpftmp.csproj when ThisAssembly is used #404

@hypervtechnics

Description

@hypervtechnics

I am trying to embed the library within a WPF app targeting netcoreapp3.0.

Repro

  1. Create WPF (.NET Core) via Visual Studio 2019.
  2. Create Git repository via Git UI in VS.
  3. Install NerdBank.GitVersioning via NuGet UI.
  4. Add Title = ThisAssembly.GitCommitId; to the MainWindow constructor.
  5. Try to build the application.

The IntelliSense suggests ThisAssembly and also shows the right constant values in the tooltip (the class is generated somewhere), but when it comes the build:

1>------ Build started: Project: VersioningTest, Configuration: Debug Any CPU ------
1>MainWindow.xaml.cs(13,21,13,33): error CS0103: The name 'ThisAssembly' does not exist in the current context
1>Done building project "VersioningTest_deh445kx_wpftmp.csproj" -- FAILED.
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

What I tried then

  1. If you remove the line added in 3 the app successfully builds & runs. When you add the line Title = typeof(MainWindow).Assembly.GetName().Version.ToString(); instead the version is 0.0.0.0.
  2. During installation no version.json was created. I added one on project level and as this did not work in the git root which didn't work either.
  3. I executed nbgv install via packet manager console on solution(= git repo root) level, after installing it as a global tool. Still did not work. On project level did not work either (created files at same location).
  4. Used Title = typeof(MainWindow).Assembly.GetName().Version.ToString(); and nbgv install. Version displayed is 1.0.0.0.

Context

My project file:

<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">

  <PropertyGroup>
    <OutputType>WinExe</OutputType>
    <TargetFramework>netcoreapp3.0</TargetFramework>
    <UseWPF>true</UseWPF>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Nerdbank.GitVersioning" Version="3.0.26">
      <PrivateAssets>all</PrivateAssets>
      <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
    </PackageReference>
  </ItemGroup>

</Project>

I did not find any issues related to this issue.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions