# Claude Code .NET: C# Projelerinde Nasıl Kullanılır?

Adres: https://agentvera.dev/blog/claude-code-ile-dotnet/ · Yayın: 2026-11-01

Claude Code’u C# ve ASP.NET Core projelerinde verimli kullanmak için CLAUDE.md yapısı, çalışma döngüsü, test ve paralel ajan ipuçları burada.

**Kısaca:**

- Claude Code, dotnet CLI ile entegre çalışarak derleme, test ve kod üretimini tek komut döngüsünde yönetir.
- CLAUDE.md içinde build, test ve çözüm yapısını tanımlamak .NET projelerinde tutarlılığı artırır.
- EF Core migration ve DI kayıtları gibi kritik noktalarda diff’i gözden geçirmek gerekir.

Claude Code, .NET projelerinde terminalde `claude` komutuyla başlatılan ve dosya sistemi üzerinde gerçek değişiklikler yapan bir kodlama ajanıdır. C# ve ASP.NET Core çözümlerinizde `dotnet` komutlarını çalıştırır, derleme hatalarını okur ve testleri koşturur. Aşağıda, ajanı .NET projesinde verimli kullanmak için gereken kurulum, çalışma düzeni ve doğrulama adımları anlatılıyor.

## Claude Code neden .NET işlerine uygun?

Claude Code, .NET ekosistemindeki günlük işleri terminal üzerinden yönetebilir. `dotnet build` çıktısındaki CS hata kodlarını ve MSBuild uyarılarını okur, hatalı projeyi `src/` altındaki .csproj yapısından tanır. `dotnet test` çıktısını filtreleyerek yalnızca başarısız testlerin nedenini araştırabilir. .sln ve .csproj dosyalarını anladığı için proje referanslarını, NuGet paket sürümlerini ve hedef framework’ü dikkate alır. Örneğin bir ASP.NET Core servisinde hata aldığınızda `appsettings.Development.json`, DI kayıtları ve middleware sırasını birlikte inceleyebilir. EF Core migration’ları için `dotnet ef migrations add` çağırabilir ve oluşan dosyaları düzenleyebilir. Terminale bağlı çalıştığı için sizin zaten kullandığınız MSBuild uyarıları, xUnit çıktıları ve dotnet format komutları ajan için doğal geri bildirimdir. Özellikle ASP.NET Core’da request pipeline’ı, model binding, validation ve dependency injection gibi katmanlar arası bağlamı okur; bu da sadece tek dosyayı değil, uygulamanın bütününü görmesini sağlar. Genel kullanım için [Claude Code](/ajanlar/claude-code/) sayfasına bakılabilir.

## Proje ajan için nasıl hazırlanır?

Claude Code her oturumda proje kökündeki CLAUDE.md dosyasını bağlam olarak yükler. .NET projesinde bu dosya, ajanın hangi komutları hangi sırayla çalıştıracağını ve hangi kurallara uyacağını belirler. Kısa, deterministik ve çözüm yapınıza özel tutun. Aşağıdaki örnek, src/tests ayrımı, global.json ve EF Core komutlarını içerir:

```markdown
# CLAUDE.md

## Komutlar
- Derleme: `dotnet build src/MyApp.sln --no-restore`
- Test: `dotnet test tests/MyApp.Tests/MyApp.Tests.csproj --no-build --logger "console;verbosity=normal"`
- Lint/stil: `dotnet format src/MyApp.sln --verify-no-changes`
- Veritabanı: `dotnet ef migrations add <Name> --project src/MyApp.Infrastructure --startup-project src/MyApp.Api`

## Klasör kuralları
- `src/` altında her proje kendi klasöründe; `tests/` altında test projeleri `.Tests` uzantılı olur.
- Çözüm kökünde `global.json` SDK sürümünü sabitler.

## Kurallar
- Yeni hizmetleri `Program.cs` veya `Startup.cs` içine elle ekle; otomatik DI kayıt üretme.
- EF Core entity değişikliklerinde migration ekle; veritabanı şemasını elle güncelleme.
- Asenkron metotlarda `async void` kullanma; `Task` veya `ValueTask` döndür.
- Testlerde gerçek veritabanı veya HTTP çağrısı yapma; in-memory provider veya fake kullan.
```

Bu dosyayı her oturumda güncel tutun; özellikle yeni proje eklediğinizde veya test çerçevesini değiştirdiğinizde komutları düzeltin. Eğer çözümünüzde birden fazla test projesi varsa, ajanın hangi test projesini varsayılan alacağını belirtin. `dotnet test` komutunu `--no-restore` ile yazmak, her çalıştırmada NuGet geri yüklemesini önler. Başlangıç rehberi için [Claude Code nasıl kullanılır? Başlangıç rehberi](/blog/claude-code-nasil-kullanilir/) adresine göz atabilirsiniz.

## Çalışma döngüsü ve örnek komutlar

Claude Code ile .NET’te çalışırken şu düzeni izleyin: önce ajanın plan yapmasını isteyin, sonra küçük ve tek sorumluluklu adımlar verin, her adımdan sonra ilgili testleri çalıştırın ve `git diff` ile değişiklikleri gözden geçirin. Plan adımında ajanın değiştireceği dosyaları listelemesini isteyin; örneğin "hangi dosyaları değiştireceksin ve neden?" sorusu geniş değişiklikleri daraltır. Küçük adımlar, derleme hatasının nereden geldiğini hızlı bulmanızı sağlar. Komutları çalıştırmadan önce ajanın `git status` ile temiz durumda olduğundan emin olun. İşte tipik .NET görevleri için örnek komutlar:

- `src/Orders.Api` içindeki sipariş oluşturma akışını incele; eksik doğrulama veya transaction yönetimi var mı belirle.
- `OrderService` sınıfına stok kontrolü ekle; yeni bağımlılığı DI’a kaydet ve mevcut testleri çalıştır.
- `dotnet test tests/Orders.Tests --filter "FullyQualifiedName~OrderServiceTests"` ile yalnızca OrderService testlerini koş ve başarısız olanları düzelt.
- EF Core entity’lerinden `Customer` ve `Order` arasında bire çok ilişki oluştur; migration ekle ve `dotnet build` ile doğrula.
- `dotnet format src/MyApp.sln --verify-no-changes` çalıştır; varsa stil hatalarını düzelt.

## Tipik görevler ve dikkat edilmesi gerekenler

Claude Code, .NET’te şu görevleri iyi yapar: yeni endpoint ekleme, DTO ve model eşleme, EF Core sorguları yazma, xUnit/NUnit testleri üretme, NuGet paket güncelleme ve refactoring. Ancak bazı noktalarda insan gözetimi gerekir. Aşağıdaki tablo, sık karşılaşılan görevler için uygun istemleri ve dikkat edilecekleri özetler:

| Görev | İyi bir istem | Dikkat edilecek nokta |
|-------|---------------|----------------------|
| Yeni ASP.NET Core endpoint | "ProductsController’a GET /api/products/{id} ekle; 404 döndür, DTO kullan, testleri yaz" | Route çakışması, model binding ve HTTP durum kodları |
| EF Core migration | "Customer entity’sine Email alanı ekle; migration oluştur ve veritabanını güncelle" | Migration snapshot’ının doğruluğu, veri kaybı riski |
| DI kaydı ekleme | "IEmailService’i EmailService ile scoped olarak kaydet; Program.cs’i güncelle" | Yanlış yaşam döngüsü, çift kayıt |
| Test yazma | "OrderService.CreateAsync için happy path ve stok yetersiz senaryolarını xUnit ile yaz" | Testlerin izolasyonu, gerçek bağımlılıkların kullanımı |

Özellikle EF Core migration’larda ajanın `dotnet ef` komutunu doğru projeyle çağırdığından emin olun; yanlış proje seçimi migration’ı yanlış katmana ekleyebilir. DI kayıtlarında ajan bazen `AddScoped` yerine `AddSingleton` kullanabilir; özellikle DbContext gibi scoped servislerde bu ciddi sorunlara yol açar. Ayrıca asenkron kodda `async void` üretirse uygulama çökebilir; bu kuralı CLAUDE.md’ye yazdığınızda büyük ölçüde önlenir. Refactoring sırasında `global using` dosyalarını veya `ImplicitUsings` ayarını gözden kaçırabilir; bu yüzden her değişiklikten sonra `dotnet build` çalıştırmayı alışkanlık haline getirin.

## Test ve doğrulama

Ajanla test koştururken her zaman filtre kullanın; tüm çözümü test etmek zaman kaybettirir. `dotnet test --filter "FullyQualifiedName~OrderServiceTests"` gibi komutlar yalnızca ilgili test sınıfını çalıştırır. Ajan test çıktısını yorumlayıp hata mesajlarını düzeltebilir; başarısız testin nedenini araştırmasını isteyin. Testleri yazarken xUnit’te `[Fact]` ve `[Theory]` kullanımına dikkat edin; ajan bazen `[Fact]` yerine `[Test]` (NUnit) üretebilir. Doğrulama için `dotnet test` sonrası `git diff` ile test dosyalarını inceleyin; yalnızca test kodu değil, üretim kodunda da değişiklik olup olmadığını kontrol edin. Entegrasyon testlerinde WebApplicationFactory kullanıyorsanız ajanın test ortamını doğru yapılandırdığından emin olun; `appsettings.Testing.json` veya `UseEnvironment("Testing")` çağrısını atlayabilir. Ayrıca test çalıştırmadan önce `dotnet build` başarılı olmalı; ajan bunu otomatik yapar ama siz yine de ajanın son adımda `dotnet test --no-build` kullanıp kullanmadığını izleyin.

## Birden fazla ajanla paralel çalışma

.NET projesinde aynı anda birden fazla Claude Code oturumu açmak isterseniz AgentVera kullanışlıdır. [AgentVera nasıl kullanılır: ilk proje, ajanlar ve ızgara](/blog/agentvera-nasil-kullanilir/) sayfasında anlatıldığı gibi, her ajan kendi gerçek terminal panelinde çalışır ve dosya çakışması yaşanmaz çünkü her biri kendi git worktree’sinde ilerleyebilir. Bir ajanın işi bitince diğer bir model otomatik kod incelemesi yapar ve bulgular `file:line` olarak gösterilir. Token bütçeleri de ajan başına, tur başına ve gün başına sınırlandırılabilir; %80’de uyarı verir, sınıra gelince ajan durur ama konuşma geçmişi korunur. Bu, özellikle bir ajan EF Core migration üretirken diğerinin aynı anda testleri düzeltmesi gibi paralel işlerde güvenli bir zemin sağlar. Detaylı paralel çalıştırma için [Birden fazla Claude Code ajanını paralel çalıştırma](/blog/birden-fazla-claude-code-ajani/) yazısına bakılabilir.

## Sonuç

Claude Code, doğru CLAUDE.md ve disiplinli bir döngü ile .NET projelerinde ciddi zaman kazandırır. Anahtar; net komutlar, küçük adımlar, sürekli test ve diff incelemesidir. Ajanı asla kontrolsüz bırakmayın; özellikle veritabanı migration’ları ve DI kayıtları gibi kritik noktalarda son söz sizde olsun.

## Sık sorulanlar

**Claude Code .NET projelerinde hangi komutları çalıştırabilir?** Proje kökünde claude komutuyla başladıktan sonra dotnet build, dotnet test, dotnet format ve dotnet ef migrations add gibi .NET CLI komutlarını çalıştırabilir. Ayrıca derleyici hatalarını okuyup ilgili .cs dosyalarında düzeltmeler yapabilir.

**Claude Code için .NET projesinde CLAUDE.md nasıl hazırlanır?** CLAUDE.md’ye build, test ve lint komutlarını, src/tests klasör yapısını ve EF Core migration kurallarını yazın. Kısa ve deterministik tutun; örneğin dotnet test tests/MyApp.Tests --no-build gibi komutlar ajanın doğru adım atmasını sağlar.

**Claude Code EF Core migration üretebilir mi?** Evet, dotnet ef migrations add komutunu çalıştırıp migration dosyalarını oluşturabilir. Ancak model snapshot’ının ve veri kaybı riskinin doğru olduğunu mutlaka git diff ile inceleyin.

**Claude Code ile .NET testleri nasıl koşturulur?** dotnet test --filter "FullyQualifiedName~TestSınıfı" gibi filtrelerle yalnızca ilgili testleri çalıştırabilirsiniz. Ajan test sonuçlarını yorumlayıp başarısız senaryolar için düzeltme önerebilir.

---

**AgentVera hakkında.** AgentVera, Solviera Teknoloji tarafından geliştirilen macOS, Windows ve Linux masaüstü uygulamasıdır. 18 yapay zeka kodlama ajanını (Claude Code, Codex, Gemini CLI, Copilot, Cursor, Antigravity, opencode, Hermes, Qwen Code, Kimi Code, Kiro, Amp, Droid, Goose, Vibe, Crush, Aider, Cline) proje bazında, gerçek terminallerde ve kullanıcının kendi CLI kurulum ve girişleriyle yan yana çalıştırır. Ücretsiz planda sınırsız ajan vardır. İndir: https://agentvera.dev/indir/ · Fiyatlar: https://agentvera.dev/fiyatlar/
