In dotnet cli AssemblyInfo is generated during each build from properties present in the project.json file. MSBuild currently relies on a template generated or user created AssemblyInfo to be present.
For certain options which need to be present in the csproj
for pack (or other mechanisms) to function, it doesn't make sense to require putting these in both the project and AssemblyInfo.cs. (e.g. language
)
For this reason it makes sense to generate a subset of the assemblyinfo from the project during build, and leave the rest to be manually entered.
To do this we need to determine what the subset of AssemblyInfo is that we're generating and how they map to msbuild options.