dotnet uygulamsında gRPC servisi kullanma

Tamer TÜRKSOY
Asis Technologies
Published in
2 min readAug 16, 2022

Bu yazıdaki amacımız, size bir gRPC servisi verildi ve hadi buraya entegre alalım dendiğinde ve request sağlamanız istenirse nasıl bir çözüm sağlayabiliriz. Basit bir entegrasyon olduğu için yazıda kısa olacak. Bu yazıda dotnet 5.0 ile yazılmış bir projeden örnek vereceğim. İlk önce projemize aşağıdaki belirteceğim Nuget paketlerini yüklememiz gerekiyor,

Projemizde ana dizinde Protos adında bir klasör açıyoruz ve içine ilgili proto dosyasını kopyalıyoruz.

project.csproj içinde yukarıda kopyaladığımız proto dosyasının yolunu belirterek projeye include ediyoruz. Projede iki tane proto dosyası var. Burada sadece SrvApi.proto entegrasyonu için çalışıyoruz.

<ItemGroup>
<Protobuf Include=”Protos\SrvApi.proto” GrpcServices=”
Client” />
</ItemGroup>
</Project>

Bu aşamadan sonra projeyi build etmemiz gerekiyor. Build işlemi başarılı şekilde bittikten sonra generate edilmiş cs grpc classları projenin obj klasöründe oluşması gerekiyor. “..\proje_yolu\obj\Debug\net5.0\Protos” yoluna gidip ,ilgili converted proto cs dosyaları görebilirsiniz.

Servisi call etmek için SrvService adında class açalım, sonra bu class’a SrvApi.SrvApiClient şeklinde gRPC dosyasını inherit edelim. Bu inherit edilen class bir yukarıdaki paragrafta açıkladığım yolda oluşturulmuş olan grpc dosyasıdır. scproj dosyasında client olduğunu belirttiğimiz için bu şekilde oluştu. scproj dosyasında server deseydik Server classı oluşacaktı.

Aşağıdaki kod bloğu ile execute edilmesi istenilen yerde metod call edilerek çağrılabilir;

ISrvService.GetDataDetails(req);

--

--