Son Yazılar

VS Code ile Docker Üzerinde ki .NET Core Uygulamalarında Uzaktan Debugging

Merhabalar;.NET CORE uygulamalarının en güzel özelliklerinin başında platformlar arası desteği tartışılmaz, bende bu yazımda bu örneklerinden biri üzerinde Docker konteynera dağıtılmış bir .NET CORE uygulamasının uzaktan debug işleminin nasıl yapılacağını anlatacağım. Uzaktan diyorum çünkü aynı makine üzerine bile oluşturulmuş olsa da yine uzak bir makine gibi davranmasından dolayı. Visual Studio kullanıyorsanız zaten bu işlemi yapabiliyorsunuz, ama Mac veya Linux’da çalışmayacaktır. Fakat VS Code kullanıyorsanız ve Dockerfile yaratırsanız şu şekilde görünecektir; Evet bu imajı oluşturarak ve container’ı başlatarak uygulamamızı başlatabiliriz, fakat hata ayıklama yapmak istiyorsa... »

.NET CORE EnableBuffering()

Merhabalar; Bazı durumlarda isteklerin gövdelerini defalarca okumamız gerekebilir; Örneğin reques body içeriğini işlemek için defalarca okuyan bir katman yazılımımız olabilir. Genellikle Request.Body geri alınamaz bir kez okunur ve tamamlanır. Basit bir çözüm olarak, içeriğin birkaç kez okunabilmesini sağlamak için akışın bir kopyasını aramayı destekleyen başka bir akışta saklamaktır. ASP.NET Framework’de bir http isteğinin gövdesini HttpRequest.GetBufferedInputStream methodu kullanarak bir çok kez okumak mümkündür, fakat ASP.NET CORE’da farklı bir yaklaşım kullanılmalıdır. ASP.NET Core 2.1 ile birlikte gelen EnableBuffering()istek gövdesini birkaç kez okumak için kullanılabilen ... »

Node-RED & Azure IoT Hub & .NET CORE Üzerine

Node-RED & Azure IoT Hub & .NET CORE Üzerine

Bugün ÇözümPark Iot on Azure etkinliğinde konuşmacıydım. Node-RED ile IoT cihazlar, online servisler vb. IoT yazılımlarının nasıl tek satır kod yazmadan yapılabileceği ve deploy edilebileceğini anlattım. Küçük bir demo ile Node-Red ile sensörlerden alınan verilerin öncelikle Azure IoT hub üzerinde bir cihaz kaydı sonrasında da bu cihazlara anlık olarak aktarılmasını gösterdim. Yine Azure IoT Hub üzerindeki bu cihaza gönderilen telemetry datalarının anlık olarak bir .NET Core örneği ile izlenmesini sağladım. Etkinliğe katılan herkese teşekkür ederim, güzel bir gündü. »

Web.Debug.Config ve Web.Release.Config

.Net geliştirirken genellikle göz ardı ettiğimiz web.debug.config ve web.release.config dosyalarının amacını ele alacağız. Genellikle, kodu deploy ederken bu iki dosyayı yok sayarız. Bunlara web.config dönüşüm modeli denir ve uygulamalarınızı çeşitli sunucu ortamlarına dağıtırken web.config dosyanızı otomatik bir şekilde değiştirmenize olanak tanır. Böylece, Web.Stage.Config, Web.UAT.Config dosyası gibi çeşitli yapılandırma dosyaları oluşturabilir ve yapılandırma ayarlarınızı buna göre değiştirebilirsiniz. Varsayılan olarak, aşağıdaki dönüşümü yapmanızı sağlar. Bir node değiştirme Bir node ekleme Bir node silme Özellikleri Kaldırma Özelliklerin Ayarlanması Microsoft Dokümantasyonunda&nb... »

.NET CORE Random Password

Merhabalar;.NET Core kullanarak belirlediğimiz karakter tiplerinde rastgele şifreler oluşturabilmek için bir proje oluşturacağım. Random oluşturmak için 3 yöntemimiz var, Next, NextBytes ve NextDouble. Next yönetimi rastgele bir sayı döndürür,NextBytes yöntemi rastgele sayılardan oluşan bir byte dizesi döndürür,NextDouble yöntemi de 0.0 – 1.0 arasında rastgele bir double sayı döndürür. Örneğin sadece verilen karakterlerden oluşan ve belirli bir uzunlukta olan rastgele bir parola oluşturmak istiyoruz;Bunun için kodumuzda kullanacağımız karakterleri ve uzunluğu belirtiyoruz Not: validChars içeriğini istediğimiz karakterlerle değiştirebiliriz. .NET CORE için Program.cs içeriğimiz aşağıdak... »

.NET Kısa Çözümler – Bir .NET Uygulamasında Java Metodu Çağırma

Merhabalar; Uygulamamızda bir .jar çalıştırarak çıktısını okumamız gerekirse IKVM kullanabiliyorduk fakat artık geliştirilmiyor ve yeni uygulamalarımız için kararlı değil. Eğer java programımız çıktısını StandartOutput olarak üretebiliyorsa, yani konsola yazabiliyorsa aşağıdaki gibi bir yöntemle alabiliriz. »

.NET Kısa Çözümler – Bir Metin Dosyasından Okuma Yaparken Son Okunan Kısma Atlama

Merhabalar;Bir metin dosyasında okuma yapan bir projede dosya devamlı olarak güncelleniyor ve benimde bu dosyayı devamlı olarak okumam gerekiyordu. Fakat okuduğum alanları tekrar tekrar okuyup ayırmak yerine sadece yeni eklenen kısmı nasıl okurum diye araştırırken Seek ile bunu aşağıdaki şekilde yapabileceğimi gördüm. »

ML.NET – Açık Kaynak Makine Öğrenme

Merhabalar; Makine öğrenme ve Yapay zeka kavramlarının hızla geliştiği ve bu hıza yetişemediğimiz bir dönemden geçiyoruz. Microsoft, Azure ile bu alanda oldukça ileride gidiyor, ayrıca .NET dünyası içinde ML.NET ile açık kaynak olarak hayatımıza 2018 yılında girmişti. ML.NET cross-platform bir çerçeve bu sayede Windows, Linux ve MacOS’larda çalışabiliyor. .NET Core ve .NET Framework’leri ile kullanılabiliyor. Bazı özelliklerine bakacak olursak; ML.NET, çapraz platformdur; Linux, Windows ve MacOS’ta desteklenir. Açık kaynaktır – https://github.com/dotnet/machinelearning TensorFlow, CNTK, vb. ile birlikte çalışabilir. Bir .NET geliştiricisiyseniz, ML.NET’i mevcut .NET uygulam... »

C# .Net Core Ascii Ağaç Yapısı Oluşturma

C# .Net Core uygulamasında konsol da ağaç yapısında bir listelemeye ihtiyacım oldu. Andrew Lock’un bloğunda bu konuda bir örneğe rastladım, kodları aşağıda görebilirsiniz, ayrıca Github adresimdem proje dosyalarına ulaşabilirsiniz. Program.cs node.cs Kaynak; https://andrewlock.net/creating-an-ascii-art-tree-in-csharp/ »

.Net Core Uygulamasını Tek Bir Exe Olarak Yayınlama ( dotnet-warp)

Yaptığımız bir .NET Core uygulamasını tek bir exe olarak yayınlamam gerekti, ne demek tek bir Exe? Klasör kopyalamak yok, kurulum yapmak yok programımız tek bir exe olarak çalışacak. Kısaca nasıl yapacağımızı anlatacağım, bunun için dotnet-warp aracını kullanacağız. Öncelikle kuru dotnet-warp kurulumunu yapıyoruz; Daha sonra projemiz içerisinde aşağıdaki komutu çalıştırıyoruz; İşlem sonunda uygulamamızı tek bir exe olarak bize veriyor. »

.NET Kısa Çözümler – Büyük Harf ile Split

Merhabalar;Bir şehir listesi bana birleşik olarak geliyor sadece ilk harfleri büyük diğer karakterler küçük harf. “İstanbulAnkaraIzmirKonya” gibi. Aralarında boşluk olsa ayırmak için çok fazla çözüm var, fakat burada ayırma işlemini Büyük harfler ile yapmamız lazım bunun için aşağıdaki örneği kullanabiliriz. Canlı Demo »

.NET Kısa Çözümler – Bir Dizindeki Tüm Dosyaları ve Alt Dizinlerin Sayısını Almak

Merhabalar; Sahada yaptığımız bir otomasyon uygulamasında etiket formatlarını yazdırdıktan sonra yazdırılan her etiketin prn dosyasınıda kayıt altına almamız gerekti. Fakat belirli adete ulaştıklarında da bu formatları başka bir yere göndermeliydik, bu nedenle dizin içerisindeki dosya sayılarını almamız gerekiyordu. Kaynaklar sıkıntılı olduğu için az kaynakla hızlı bir çözüm gerekliydi, çünkü günlük binlerce yeni dosya kaydından bahsediyoruz. Bunun için aşağıdaki gibi farklı çözümler var fakat kaynak harcamakta üstlerine yok. Bende aşağıdaki bir çözümler az kaynak çok iş diyebileceğimiz bir yöntem buldum. Daha da az kaynak istiyorum; Bunun için çözümde aşağıda »

.NET Kısa Çözümler – PDF Dosyasını Tek Bir Resim Olarak Almak

Merhabalar; Bazı durumlarda birden fazla sayfaya sahip olan bir pdf dosyasını tek bir resim olarak dönüştürüp almak isteyebiliriz. Her bir sayfayı bir resim olarak alacak bir çok kullanım şekli var fakat biz tüm sayfaları tek bir resimde almak istiyorsak aşağıdaki örneği kullanabiliriz. Bu örnekte Magick.NET kullanıyoruz, dönüştürmeden önce en son GhostScript sürümünü kurmamız gerekiyor. »

.NET Kısa Çözümler – Uygulamanın Çalıştığı .NET Framework Versiyonunu Öğrenmek

Bazı durumlarda çalıştırdığımız uygulamanın hangi framework versiyonunu kullanarak çalıştığını öğrenmemiz gerekebilir. Uygulamada oluşan hataların geri bildirimlerinde vb. durumlarda hata ile birlikte .NET CLR ve .NET Framework sürümlerini de yanına iliştirmem gereken bir çözüme ihtiyacım oldu. Normalde .NET versiyonlarını çağıran bazı örnekler oldukça fazla var fakat bana bilgisyarda kurulu sürümler değil o anda uygulamanın çalıştırıldığı sürüm gerekiyor, bunun için aşağıdaki gibi bir çözüm hızlıca uygulanabilir. Bu, geçerli runtime’ın System.String türünü içeren derleme için FileVersionInfoversiyonunu alır. »

Enable [ApiController]

Merhabalar; Bildiğiniz gibi ApiControllerAttribute HTTP Api geliştirmek için bir takım MVC özelliği sağlar. Normalde kullanımı onu controllera ekleyerek olur. Normal olarak çalışıyor, fakat biz onu her controller içine eklemek zorunda kalmadan ve tüm controllerlar için global olarak etkin olmasını nasıl sağlayabiliriz? ASP.NET Core 2.1’de tek çözüm onu bir class içerisine koymak ve diğer controllerlar için o class’dan devralmaktı. ASP.NET Core 2.2 ile bu konuda bir güncelleme yapıldı, [ApiController] assembly  Yukarıda ki kod [ApiController] özelliğini otomatik olarak bu assembly içindeki tüm controllerlara ekler.Fakat maalesef örnek; IApplicationModelConvetion veya bir filter ku... »

“IoT on Azure” Seminerinde Konuşacağım – Node-Red Akış tabanlı programlama & Azure IoT Hub cihaz kaydı ve veri gönderme

Microsoft sponsorluğunda, ÇözümPark Bilişim Portalı’nın düzenleyeceği IoT ve Azure iş birliği ile şirket ortamlarınızda neler yapılabileceğinin örneklendireceği saha ve proje tecrübesi olan uzman danışmanların gerçekleştirdiği projelerdeki örneklerin paylaşacağı uygulamalı eğitim de bende geleceğin programlama alt yapısı olarak gördüğüm “Node-Red” ile Akış tabanlı programlamayı anlatacağım. IoT cihazlardan tek satır kod yazmadan verilerin alınmasından Dashboard ekranlar üzerinde gösterilmesine ve Azure IoT Hub’a cihazların kaydı ve verilerin iletilmesi konularında uygulamalı bir sunum yapacağım. Ayrıca benim haricimde;Daron Yöndem – Bilmeyenler için Azure IoT Hu... »

Net Core 3.0 Geliştirme Anketi

Merhabalar;Microsoft çalışanlarından Olia Gavrysh bir anket yayınladı, Net Core 3.0 ile form uygulamalarından hangisinin tercih edilmesi gerektiği, taşıma işlemleri ve geri bildirimler ile ilgili soruların yer aldığı bu anketi doldurarak en çok tercih edilene göre geliştirmede öncelik verileceğini anlıyoruz. Aşağıda ki linten ankete ulaşarak kendimize göre en çok tercih ettiğiniz veya Net Core 3.0 ile öncelikli geliştirilmesi gerektiğini düşündüğünüz formu seçebilirsiniz. Ayırca işbirliği seçeneğini seçerseniz sizinle gerekli konular da iletişime geçebilecekleri de belirtiliyor. Anket Linki;https://www.surveymonkey.com/r/BNLS9VR »

Kendime Notlar – Node-Red MQTT Broker

Node-red ile bir client’in mesaj gönderebileceği bir MQTT Broker oluşturmak için Mosca MQTT broker eklentisi kullanılmalıdır. Böylece istediğiniz port ayarlayarak ve user – pass tanımlayara clientlerin mesaj iletebilmesi sağlanabilir. Mosca bu mesajları alır ve sizde gerekli işlemlere tabi tutarak Azure IoT gibi bir yere IoT cihazlarınızdan gelen verileri kolayca aktarabilirsiniz. »

Kendime Notlar – Visual Studio Python

Visual Studio ile python kodlamaya başlamak istiyorsanız Python ve kütüphanelerinin VS üzerinden kurulması en sağlıklı olanıdır, aksi durumda hepsi birbirine giriyor, karışıklıklara neden olabiliyor. Tüm pip installerinde VS üzerinden kolayca yapılabilmesi nedeniyle de dışarıdan hiç uğraşmadan tüm herşeyi VS üzerinden yapmam gerekir. »

ML.NET 0.9 Yayınlandı

Merhabalar; Microsoft ML.NET 0.9’un yayınlandığını duyurdu, ben öncelikle ML.NET nedir, nerelerde kullanılır bunu açıklayacağım. ML.NET makine öğrenimi (machine learning) çözümleri oluşturmanıza ve bunları .NET uygulamalarınızla entegre etmenize olanak sağlayan ücretsiz, açık kaynaklı ve multiplatform bir çerçevedir.  ML.NET API’leri ile zaten aşina olduğunuz ve kullandığınız .NET kullanarak Yapay zeka projeleri yapmanıza olanak sağlar. ML.NET 0.1 2018 yılında ilk defa yayınlanarak hayatımıza girdi, ve 10 Ocak 2019 itibariyle 0.9 sürümü yayınlandı. Sürüm şu güncellemeleri içeriyor; Feature Contribution Calculation (FCC) ve Model Explainability improvements iyileştirmeleri ONNX Tr... »

  • 1
  • 2