Laden...

File Nesting in VS 2022 für ASP.Net 4.8 Projekt

Erstellt von Christoph K. vor einem Jahr Letzter Beitrag vor einem Jahr 785 Views
Christoph K. Themenstarter:in
821 Beiträge seit 2009
vor einem Jahr
File Nesting in VS 2022 für ASP.Net 4.8 Projekt

Hallo zusammen,

ich arbeite zurzeit mit VS 2019 und benutze dort ein Plugin für das FileNesting (z.B. um .js Dateien unter .ts Dateien zu nesten).
Ich würde gerne auf VS 2020 upgraden, muss jedoch feststellen, das das Plugin unter 2022 nicht mehr verfügbar ist. Gleichzeitig bietet VS 2022 eine eigene Funktionalität zum FileNesting an, welche jedoch (so wie es mir scheint) nur für Projekte ab .net 5.0 oder .net Core verfügbar ist.
Wenn ich meine ASP.Net 4.8 Solution mit VS 2022 aufrufe fehlt diese Option.

Hat jemand eine Lösung für mich?

VG
Chris

2.079 Beiträge seit 2012
vor einem Jahr

Ich weiß nicht, ob es an der Min-.NET-Version hängt, aber ich bezweifle es.
Ich schätze eher, es hängt am csproj-Format, dass Du das neue SDK-Format brauchst.
Man kann das alte ASP.NET auf das neue SDK-Format umstellen, ich hab das vor einiger Zeit mal "per Hand" gemacht - einen einfachen Weg kenne ich aber nicht.

Ansonsten kannst Du auch manuell die Dateien zuordnen, das geht in der csproj:


<ItemGroup>
  <Compile Include="a.cs" />
  <Compile Include="b.cs">
    <DependentUpon>a.cs</DependentUpon>
  </Compile>
</ItemGroup>

Dann wird die a.cs unter der b.cs angezeigt.

Besser wäre natürlich, Du steigst auf das neue ASP.NET um, das bringt noch einiges mehr an Vorteilen 😉

NuGet Packages im Code auslesen
lock Alternative für async/await

Beim CleanCode zählen nicht die Regeln, sondern dass wir uns mit diesen Regeln befassen, selbst wenn wir sie nicht befolgen - hoffentlich nach reiflichen Überlegungen.

16.835 Beiträge seit 2008
vor einem Jahr

Siehe finale Antwort von Jackson Davis: VS2022; File Nesting for Non-ASP.NET Core projects

In 17.3, the feature is enabled by default for all CPS based projects. So, assuming your project is CPS Based, you can either move to 17.3 preview 1, or enable the feature flag manually. If your project is not CPS based, you’ll need to move to and SDK style project for your class library first.

To enable the feature flag manually, edit the following file: Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\CommonExtensions\Platform\Shell\Microsoft.VisualStudio.FeatureFlags.pkgdef, find the DWORD value for this flag: $RootKey$\FeatureFlags\Cps\EnableConfigurableFileNesting, and set it to 1. It should look like this:
[$RootKey$\FeatureFlags\Cps\EnableConfigurableFileNesting]
“Description”=“#1514”
“Value”=dword:00000001
“Title”=“#1513”
“PreviewPaneChannels”=“*”
“RequiredAction”=“#1515”
“PackageGuid”=“6E87CFAD-6C05-4adf-9CD7-3B7943875B7C”

Next, run VS with /setup to re-populate the package def.

PS: ich hatte zwar gewusst, dass hier was war - aber nicht mehr der Titel.
Die Google Suche nach "vs 2022 file nesting non asp" liefert aber dieses Thema als ersten Treffer.

Christoph K. Themenstarter:in
821 Beiträge seit 2009
vor einem Jahr

Hatte ich auch schon probiert:

[$RootKey$\FeatureFlags\Cps\EnableConfigurableFileNesting] => Gibt es bei mir in der Datei nicht.
Ich hatte dann den Eintrag manuell hinzugefügt, was leider auch nichts gebracht hat.