Zápis referenčních sestavení do zprostředkujícího výstupu

Sada .NET SDK nyní zapisuje referenční sestavení do IntermediateOutputPath namísto OutDir jako výchozí chování. Tato změna odstraní artefakty používané pouze při sestavení z výstupů, které potřebujete za běhu.

Verze uvedena

.NET SDK 6.0.200

Staré chování

Vzhledem k tomu, že byla přidána referenční sestavení, sada .NET SDK zapisuje referenční sestavení do adresáře odkaz v OutDir adresáři kompilace. V rozhraní .NET 5 byla vlastnost ProduceReferenceAssembly zavedena a ve výchozím nastavení nastavena true pro net5.0 aplikace a novější aplikace. S touto změnou začalo mnoho aplikací implicitně generovat referenční sestavení v OutDir adresáři.

Nové chování

Nyní se referenční sestavení ve výchozím nastavení zapisují do adresáře refint v adresáři IntermediateOutputPath, stejně jako mnoho dalších dočasných artefaktů.

Důvod změny

Referenční sestavení obecně nejsou prostředky modulu runtime, a proto nepatří do OutDir adresáře ve výchozím nastavení.

Pokud máte vlastní logiku sestavení a potřebujete manipulovat s referenčními sestaveními, použijte TargetRefPath vlastnost k získání správné cesty.

Pokud externí systém vyžaduje referenční sestavení v OutDir, nastavte MSBuild vlastnost ProduceReferenceAssemblyInOutDir v true souboru projektu.