Kategori arşivi: C#

Visual Studio Projelerinde Yüklenen NuGet Paketlerin Farklı Sürüm Problemi

NuGet severek kullandığım bir extension ama solationa eklediğiniz projeler arasında yüklediğiniz paketler arasında versiyon uyumsuzluğu olabilir. Bir de çok n-layered bir mimariniz varsa gözden kaçanlar da olabilir. Gözünüzden kaçarsa output penceresinde aşağıdaki gibi bir hatayı görebilirsiniz.

C:\Program Files (x86)\MSBuild\14.0\bin\Microsoft.Common.CurrentVersion.targets(1820,5): warning MSB3277: Found conflicts between different versions of the same dependent assembly that could not be resolved. These reference conflicts are listed in the build log when log verbosity is set to detailed.

Paketler arasındaki bu uyumsuzluğu düzeltmek için, NuGet gerekli önlemi unutmamış 🙂 Solution üzerinde NuGet Paket Yönetimine girdiğinizde 4. bir sekme göreceksiniz. Bütün projelerinizi tarayıp, uyumsuz olan paketleri size göstermektedir.

Facebooktwittergoogle_plusredditpinterestlinkedin

string Tipinde Gelen Türkçe Tarihi DateTime Tipine Çevirmek

Araştırmak neredeyse yarım günümü alan bir sorunumu sizlerle paylaşmak istedim.

Üstünde çalıştığım projede, string tipinde gelen ve de formatı “dd MM yyyy DD” tarihi DateTime tipine çevirmem gerekiyordu. Tipini değiştirmem için Parse fonksiyonunu kullanmam lazım ama tarihin culture bilgisi olmadan gelen tarihi algılaması mümkün olmuyor. Aşağıdaki gibi bir fonksiyon ile çözdüm.

 

Facebooktwittergoogle_plusredditpinterestlinkedin

ASP.NET MVC’de HTML5 data-* Attributes Kullanımı

MVC’de form controlleri eklerken HMTL5 attributes kullanmak isteyebilirsiniz ama data-* attributes’leri içindeki “-” aritmatik bir operatör olduğu için sayfanız hata verecektir. Proplemi aşmak için “_” çizgi kullanmanız yeterlidir.

Örnek:

Facebooktwittergoogle_plusredditpinterestlinkedin

ASP.NET MVC ile Post Edilen Html Kodları (ValidateInput)

MVC ile hazırladığımız sayfalarda CKEditör gibi zengin metin editörü kullanıyorsak, sayfamızı post ettiğimizde aşağıdaki gibi hata alabiliriz.

“[HttpRequestValidationException (0x80004005): A potentially dangerous Request.Form value was detected from the client…”

Bu hata aslında bir güvenlik önlemi olup, sayfada html ve js kodları yürütmeyi engellemektedir. Eğerki kontrol panelinizde kullanacaksanız metodunuzun üstüne [ValidateInput(false)] attribute belirtmeniz yeterli olacaktır.

Facebooktwittergoogle_plusredditpinterestlinkedin

ASP.NET Cookie Türkçe Karakter Proplemi ve Çözümü

Üzerinde çalıştığım projede session ile yaptığım kısımları cookie olarak değiştirmem gerekiyordu. Düzenlemeden sonra cookielerden gelen değerlerde türkçe karakter problemi olduğu gördüm. Bu sorunu UrlEncode ile çözebilirsiniz ama yazılım sürecini uzatıyor. web.config ile daha kolay bir şekilde çözüme ulaşabilirsiniz.

Facebooktwittergoogle_plusredditpinterestlinkedin

Windows Azure Bölgesel Ayarlar

Üzerinde çalıştığım web servis projesini, azure servisinde çalıştırdığımda hata alıyordum. Hatayı yakaladıktan sonra anladım ki Türkçe para formatına göre yaptığım işlemlerden dolayı oluyormuş. Türkçe’de yüzdelik virgül ile ayrılıyor sonuçta 🙂

Çözüm ise;

Facebooktwittergoogle_plusredditpinterestlinkedin

Html.BeginForm’u Post Sonrasında Js ve JQuery İşlemleri

Üzerinde çalıştığım projemde dosya yükleme eklemem gerekiyordu. Bütün view’lerimde Ajax.BeginForm ile post ediyordum ve post sonrası js işlemleri için parametre olak OnSuccess kullanıyordum. Upload işlemini Html.BeginForm ile yapmak zorunda kalınca OnSuccess’den mahrum kaldım.

Html.BeginForm ile post sonrasında js kütüphanelerimi aşağıdaki gibi bir yöntemle çalıştırdım 🙂

JS Kütüphanesi:

Controller.cs:

Facebooktwittergoogle_plusredditpinterestlinkedin

HttpContext.Session Özelliği

Bilişim kariyerimdeki yazılım geliştirme ile uğraştığım senelere bakacak olursak, her halde en bıkmış olduğum olduğum konu sessionlardır.

Ne zaman üyelik sistemi veya session ihtiyaç duyduğum bir uygulama üzerinde uğraşsam beni bir huzursuzluk kaplıyor 🙂 Yıllardır bu bende tramva olarak sürer ve en sonunda bununla ilgili birşeyler yazıp içimi dökmek istedim.

Her yazılımcının bildiği gibi HttpContext.Session özelliği kullanımı üç başlık altında özetleyebiliriz. Uygulamaları olarak gideceğimiz için ilk önce string tipindeki değişkenlerimizi oluşturuyoruz.

Sessionlarımıza değişkenlerimizi kayıt ediyoruz.

Sessionlarımızdaki değeri okuyoruz.

Web Form sınıfı dışında ise böyle kullanıyoruz.

Teoride her şey ne kadar kolay ama uygulamada hatam nerede yaaa ama bulacağım sorunu 😉

Facebooktwittergoogle_plusredditpinterestlinkedin

C# ile sayı yuvarlama

Genellikle double tipinde ondalık sayıyı yuvarlamak için Round fonksiyonu kullanıyorlar ama C#’ın büyük kütüphanesi sağolsun çok kullanışlı Math sınıfı ile sayıyı bir üstüne veya bir altına yuvarlayabiliyoruz.

Bir üst sayıya yuvarlamak için;

Bir alt sayıya yuvarlamak için;

Facebooktwittergoogle_plusredditpinterestlinkedin