21 Eylül 2013 Cumartesi

Mvc 4 Basit Üyelik Sağlayıcı (SimpleMembershipProvider) Sql server çalışma sorunu

Herkese merhaba Mvc ile çok makale paylaşamıyorum ama yıllar önce fark ettiğim gerçekler bu gün net olarak kendini gösteriyor mvc 1,2 derken 4 oldu şuan 5 de çıktı. Bence büyük küçük tüm web projelerinin vazgeçilmezi. Büyük projelerin tek tek Mvc ye döndüğü günümüzde yeni başlayan arkadaşlara önerim teknolojideki gelişmeleri yakından takip etmeleri. Yeni bir teknoloji çıktığında ilk bilenlerden olun bu heyecanı hiç bir zaman kaybetmeyin. Yeni yazılım teknikleri biz kod yazarlara kolaylık ve güvenlik getirdiği için kullanmadan faydasını anlayamazsınız.

Gelelim mvc 4 SimpleMembershipProvider sql serverde çıkacak basit hatasına.

ilk önce bir tane MVC 4 projesi oluşturalım sizinde fark ettiğiniz gibi register dan yeni üyelik işlemi yaptığınızda proje içinde yeni Database oluşacak. Bu database içinde olan 5 tabloyu kendi sql db içinde oluşturun.

Sıra geldi Web.Config dosyasında bulunan  DefaultConnection cümlemizi oluşturmaya,
add name="DefaultConnection" connectionString="Data Source=Server_Adı; Initial Catalog=Database_adı; Persist Security Info=True; User Id=User_Adı; Password=Sifre" providerName="System.Data.SqlClient"

Filters altındaki InitializeSimpleMembershipAttribute.cs içindeki
//WebSecurity.InitializeDatabaseConnection("DefaultConnection", "UserProfile", "UserId", "UserName", autoCreateTables: true); Satırını Global.asax içine taşıyacağız. Aslında buna gerek yok sorun yaşarsanız yapın. Ama en çok açtığınız user isimlerinin büyük harfle ve ing olmasına dikkat edin hata almazsınız.


Bu işlemlerden sonra yeni üyeler sizin belirtiğiniz Database'e kayıt olacaktır.
  

SQL Serverda Yılın,Ayın ve Haftanın İlk ve Son Günleri

Örneğin bugünün 29.12.2011 olduğunu düşünürsek ayın ilk günü bulmak için öncelikle bu tarihin ayın kaçıncı günü olduğu DAY fonksiyonu ile bulup daha sonra çıkan gün kadar eksi gün sayısını elimizdeki tarih değerine eklersek ayın ilk gününü bulmuş oluruz. Şimdi bugünün tarihini baz alarak örneklerimizi yapalım.

DECLARE @tarih DATETIME=GETDATE() SELECT 'Onceki Ayın Son Gunu' Aciklama,CONVERT(VARCHAR(10),DATEADD(dd,-(DAY(@tarih)),@tarih),112) Tarih UNION ALL SELECT 'Ayın İlk Günü',CONVERT(VARCHAR(10),DATEADD(dd,-(DAY(@tarih)-1),@tarih),112) AS Date_Value UNION ALL SELECT 'Bugunun Tarihi',CONVERT(VARCHAR(10),@tarih,112) AS Date_Value UNION ALL SELECT 'Ayın Son Günü',CONVERT(VARCHAR(10),DATEADD(dd,-(DAY(DATEADD(mm,1,@tarih))),DATEADD(mm,1,@tarih)),112) UNION ALL SELECT 'Sonraki Ayın İlk Günü',CONVERT(VARCHAR(10),DATEADD(dd,-(DAY(DATEADD(mm,1,@tarih))-1),DATEADD(mm,1,@tarih)),112) UNION ALL SELECT 'Haftanın İlk Günü', DATEADD(ww, DATEDIFF(ww,0,GETDATE()), 0) UNION ALL SELECT 'Sonraki Haftanın İlk Günü', DATEADD(ww, DATEDIFF(ww,0,GETDATE())+1, 0) UNION ALL SELECT 'Yılın İlk Günü',DATEADD(yy, DATEDIFF(yy,0,getdate()), 0) UNION ALL SELECT 'Yılın Son Günü',DATEADD(dd,-1,DATEADD(yy,0,DATEADD(yy,DATEDIFF(yy,0,getdate())+1,0)))