Search code examples
c#.net-coreprocesscsproj

Difference between AssemblyTitle and AssemblyName in a dotnet core application


Can somebody help me figure out the difference between AssemblyName and AssemblyTitle properties in a .NET Core .csproj file. I always had a picture in my mind that AssemblyTitle has got to do with the display name of the process in the task manager and AssemblyName has got to do with the name of the executable itself and it's associated with the process name. Also, the process is identified with the AssemblyName itself rather than the AssemblyTitle. Am I right or is there something more?


Solution

  • AssemblyTitle - The assembly title is a friendly name, which can include spaces.

    In Windows Vista, the information specified for this attribute appears on the Details tab of the Windows File Properties dialog box for the assembly. The property name is File description. In Windows XP, this information appears on the Version tab of the Windows File Properties dialog box. In all systems is part of the title bar and task manager process name.

    AssemblyTitle consists of a single string - Title

    AssemblyName - The assembly name is the internal name of the assembly that can be different from the title and can be acquired used via Reflection Example. Can be also null.

    AssemblyName contains multiple fields, which can be all acquired via FullName property.

    Name: Example
    Version: 1.0.0.2001
    CultureInfo: en-US
    FullName: Example, Version=1.0.0.2001, Culture=en-US, PublicKeyToken=null