Naar inhoud springen
cd /languages
Langlopende .NETProgrammerenVolledige graafondersteuning

C#-ondersteuning in Maguyva: veiligere refactors voor .NET-codebases

Maguyva ondersteunt C# met AST-parsing en symboolextractie, zodat AI-agents kunnen werken binnen .NET-services, LINQ-zware bedrijfslogica, gedeelde libraries en langlopende enterprise-repositories.

Waar het om draait in volwassen .NET-codebases

Veel teams die AI-tooling gebruiken, werken in .NET, niet in greenfield JavaScript. Ze hebben API’s, worker-processen, gedeelde modellen, interne libraries en jaren aan bedrijfslogica. De vraag is niet of een LLM C#-syntax kan genereren. De vraag is of het onderbouwd kan blijven binnen een repository waar één verkeerde wijziging kan doorwerken in services, modellen en gedeelde abstracties.

Daarom moet een C#-pagina specifieker zijn dan “ondersteund”.

Wat Maguyva daadwerkelijk extraheert in C#

Maguyva normaliseert using-imports, strippt nullable- en array-suffixen zoals ? en [] uit definities, en behandelt constructor-achtige call-nodes als instantiaties terwijl generieke haakjes worden verwijderd. Dat zijn nuttige details in class-zware C#-repo’s, omdat ze de graaf overzichtelijker maken rond echte domeintypes.

De configuratie filtert ook veel BCL- en LINQ-ruis weg. Dat is belangrijker dan het klinkt. In volwassen .NET-codebases is een graaf die wordt gedomineerd door framework-calls niet erg nuttig. De nuttige graaf is er een waarin repository-specifieke controllers, services, DTO’s en helper-classes zich nog onderscheiden.

Nuttige MCP-workflows voor .NET-codebases

De praktische flow begint meestal met:

  • find_symbol als je de naam van de controller, service, DTO of het model kent.
  • dependency_search voordat je een gedeelde service of type bewerkt dat mogelijk breed inkomend gebruik heeft.
  • get_task_context voor prompts zoals “volg dit request van controller naar repository” wanneer het pad meerdere lagen doorkruist.

Wanneer deze pagina nuttig is

Deze pagina is voor teams die AI-ondersteuning willen binnen een echte .NET-codebase, niet alleen een speeltuinproject. Als het omringende systeem meer JVM dan .NET is, vergelijk dan met Java. Als je C#-laag slechts een onderdeel is van een groter polyglot systeem, is de aangrenzende TypeScript-pagina meestal ook relevant.

Beste toepassing

  • >ASP.NET-, worker-service- en interne platformrepositories die webeindpunten, jobs en gedeelde libraries combineren.
  • >Teams die volwassen .NET-landschappen onderhouden waar LINQ, async-flows en framework-abstracties het echte uitvoeringspad verbergen.
  • >Teams die testen of een agent onderbouwd kan blijven werken in gelaagde .NET-code voordat bedrijfslogica wordt herschreven.

Agentworkflows

  • >Volg een pad van controller, service en repository voordat je bedrijfslogica bewerkt.
  • >Inspecteer waar een model, DTO of gedeelde utility door de hele repo wordt geïnstantieerd.
  • >Begrijp de omliggende LINQ- of async-patronen voordat je de agent iets laat herschrijven.

Enginedetails

  • >`using`-prefixen worden genormaliseerd bij imports, en nullable- of arraysuffixen zoals `?` en `[]` worden verwijderd uit symbooldefinities.
  • >Instantiatie gebruikt aanroepknopen met verwijdering van generieke haakjes, wat helpt om constructor-achtig gebruik leesbaar te houden in de graaf.
  • >De configuratie filtert expliciet grote hoeveelheden BCL- en LINQ-ruis zodat repository-specifieke services en modellen makkelijker naar boven komen.

Nuttige MCP-instappunten

  • find_symbol

    Gebruik dit wanneer je de naam van de controller, service, DTO of gedeeld type kent dat je gaat aanraken.

  • dependency_search

    Gebruik inkomende traversal voordat je een kernservice of model wijzigt dat door de hele applicatie wordt gebruikt.

  • get_task_context

    Nuttig voor prompts zoals “volg dit verzoek van controller naar repository” in gelaagde .NET-codebases.