Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Ez a cikk a következőre vonatkozik: ✔️ .NET Core 2.1.100 SDK és újabb verziók
A Visual Studio 2017/MSBuild 15.3-s verziójától kezdve a .NET SDK alapértelmezés szerint automatikusan tartalmazza a projektkönyvtár elemeit. Ezek az elemek magukban foglalják és Content célokat tartalmaznakCompile. Ez a viselkedés leegyszerűsíti a projektfájlokat.
Ha azonban explicit módon definiálja ezeket az elemeket a projektfájlban, valószínűleg az alábbihoz hasonló buildelési hibát fog kapni:
A program ismétlődő "Fordítás" elemeket tartalmazott. A .NET SDK alapértelmezés szerint tartalmazza a projektkönyvtár "Fordítás" elemeit. Eltávolíthatja ezeket az elemeket a projektfájlból, vagy az "EnableDefaultCompileItems" tulajdonságot "false" értékre állíthatja, ha explicit módon fel szeretné venni őket a projektfájlba.
A program ismétlődő "EmbeddedResource" elemeket tartalmazott. A .NET SDK alapértelmezés szerint tartalmazza az EmbeddedResource elemeket a projektkönyvtárból. Eltávolíthatja ezeket az elemeket a projektfájlból, vagy az "EnableDefaultEmbeddedResourceItems" tulajdonságot "false" értékre állíthatja, ha explicit módon fel szeretné venni őket a projektfájlba.
A hibák elhárításához tegye az alábbiak egyikét:
Távolítsa el az előző táblázatban felsorolt implicit elemeknek megfelelő explicit
CompileEmbeddedResource, vagyNoneelemeket.Az EnableDefaultItems tulajdonság
falsebeállításával tiltsa le az összes implicit fájlbefoglalást:<PropertyGroup> <EnableDefaultItems>false</EnableDefaultItems> </PropertyGroup>Ha meg szeretné adni az alkalmazással közzéteendő fájlokat, akkor is használhatja az ismert MSBuild mechanizmusokat, például az
Contentelemet.Csak az
NoneEmbeddedResourceEnableDefaultCompileItems, az EnableDefaultEmbeddedResourceItems vagy az EnableDefaultNoneItems tulajdonságfalsebeállításával tiltsa leCompilea < a0/> parancsot:<PropertyGroup> <EnableDefaultCompileItems>false</EnableDefaultCompileItems> <EnableDefaultEmbeddedResourceItems>false</EnableDefaultEmbeddedResourceItems> <EnableDefaultNoneItems>false</EnableDefaultNoneItems> </PropertyGroup>Ha csak a globokat tiltja le
Compile, a Visual Studio Megoldáskezelő továbbra is *.cs elemeket jelenít meg a projekt részeként, elemekkéntNone. Az implicitNoneglob letiltásához állítsa beEnableDefaultNoneItemsa következőtfalseis:
WPF-projektek
Ezt a hibát egy WPF-projektben duplikáció ApplicationDefinition vagy Page elemek miatt érheti el. A hiba megoldásához letilthatja az alapértelmezett elemeket egy MSBuild tulajdonság használatával. Ha például egy WPF-projekt alapértelmezett Page elemeit szeretné letiltani, állítsa a EnableDefaultPageItems következőre false:
<PropertyGroup>
<EnableDefaultPageItems>false</EnableDefaultPageItems>
</PropertyGroup>
További információ: Ismétlődő elemekhez (WPF) kapcsolódó hibák.