Kayıtlar

Ekim, 2019 tarihine ait yayınlar gösteriliyor

HANGFIRE JOB' IN AYNI ZAMANDA BİRDEN FAZLA ÇALIŞMASINI ENGELLEME

Hangfire da bir jobımızın olduğunu düşünelim. Bu job belirli aralıklarda çalışıyor örnek olarak 50 dadika da bir çalıştığını düşünelim job ın tahmini çalışma süreside ortalama 50 dakika diyelim fakat o job belirli nedenlerle daha uzun sürebilir. Bizde aynı job ın sadece aktif olarak bir tane çalışmasını istiyoruz. Burada karşımıza  DisableConcurrentExecution( timeoutInSeconds: 5)  çıkıyor. DisableConcurrentExecution aynı jobın aynı anda birden fazla çalışmasını engelliyor. Verdiğimiz süre ise 2. jobın 5 saniye bekledikten sonra çalıştırılmasını söylüyor.

SQL BİRDEN FAZLA VERİTABANINDA SORGU ÇALIŞTIRMA

Örnek verecek olursak her müşteri için ayrı bir database açtığınız bir uygulamanızın olduğunu düşünün. Bir tablonun en çok kaydı hangi db de olduğunu merak ediyorsunuz. DECLARE @name varchar(max) DECLARE @count bigint DECLARE MY_CURSOR CURSOR   LOCAL STATIC READ_ONLY FORWARD_ONLY FOR SELECT name FROM sys.databases WHERE koşulu ile databaseleri filtreleyebilirsiniz OPEN MY_CURSOR FETCH NEXT FROM MY_CURSOR INTO @name WHILE @@FETCH_STATUS = 0 BEGIN        EXECUTE ('select count(*),'''+ @name+''' from '+ @name+'.dbo.TableName');     FETCH NEXT FROM MY_CURSOR INTO @name END CLOSE MY_CURSOR DEALLOCATE MY_CURSOR Kod bloğu ile sonuca ulaşabilirsiniz. Kendi ihtiyaçlarınıza göre kodda ufak değişiklikler yaparak istediğiniz sonuçları elde edebilirsiniz.

.NET CORE ENTİTY FRAMEWORK CORE MIGRATION

Projeniz de Entity Framework Core ve aynı zaman da katmanlı bir mimari kullanıyorsanız yani migration sonucu çıktılarınız ProjeAdi.Data katmanın da olacak ise aşağıda ki komutları kullanarak işleminizi tamamlayabilirsiniz. Önelikle terminalden migrationların olduğu proje dizinine geliniz. Add Migration C:\Users\furkan\source\repos\ProjeAdi\ProjeAdi.Data> dotnet ef migrations add migration_name --startup-project ..\ProjeAdi.WebAPI Bu komut ile migration oluşturmuş olduk. Şimdi de bu değişikliği database yansıtmak için aşağıda ki komutu çalıştırın. Update Migration C:\Users\furkan\source\repos\ProjeAdi\ProjeAdi.Data> dotnet ef database update --startup-project ..\ProjeAdi.WebAPI Değişiklikler database' e yansımış olacaktır.