Sayfalar

Asp.Net-Mvc etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
Asp.Net-Mvc etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

11 Şubat 2014 Salı

ASP.NET MVC web uygulaması ve Console Uygulamasının SignalR ile haberleşmesi (SignalR two .net project communication (asp.net mvc and console app))




Projeyi buradan indirebilirsiniz.

https://github.com/alirizaadiyahsi/twodotnetprojectcommunication

11 Aralık 2013 Çarşamba

ASP.NET MVC - KOMPLE BİR PROJE YAPISI OLUŞTURMAK - 4

Bu makalede üyelik işlemlerini yapacağız. Üyelik işlemlerini, kendi yazdığımızı üyelik ve rol sağlayıcılar ile yapacağız. Ayrıca üye olan kullanıcılara bir onay linki yollayıp, bu onay linkini tıkladıktan sonra üyeliklerini aktif etmesini sağlayacağız.

19 Kasım 2013 Salı

ASP.NET MVC - KOMPLE BİR PROJE YAPISI OLUŞTURMAK - 3

Önceki yazılarda, projemizin altyapısını nasıl oluşturacağımıza bakmıştık. Proje artık veritabanı ile ileşime geçmiş haldedir. Bu yazıdada, uygulama tarafının iskeletini oluşturacağız.

2 Ekim 2013 Çarşamba

ASP.NET MVC - KOMPLE BİR PROJE YAPISI OLUŞTURMAK - 2

Repository, Service, Unit of Work, Unit Testing

Bu yazıda repository ve unit of work desenlerini ve service katmanını oluşturacağız. Önceki makalede,

18 Eylül 2013 Çarşamba

ASP.NET MVC - KOMPLE BİR PROJE YAPISI OLUŞTURMAK - 1

Bu yazılarda, örneklerini vereceğimiz teknolojiler ve yazılım teknikleri :  örnek bir mvc proje yapısı, code first, repository pattern, unit of work pattern, inversion of control pattern (Unity.Mvc ile), model mapping (AutoMapper ile), code first auto migration, service layer, dependency injection, area kullanımı, twitter bootstrap, grid.mvc, jquery, jquery ajax, viewmodels, custom membership provider, custom role provider, custom html helpers, fileupload, unit testing...

16 Eylül 2013 Pazartesi

ASP.NET MVC DERSLERİ ( 8.1 ) AJAX - JQUERY NEDİR?

Günümüzde artık ajax kullanmadan yapılan uygulama neredeyse yok gibi. Teknik olarak AJAX, asenkron javascript ve XML 3 lüsünün kısaltmasıdır. Yani, web sayfası üzerinde istediğimiz alanları, parçalı olarak güncellemeyi sağlamaktadır.

8 Ağustos 2013 Perşembe

ASP.NET MVC DERSLERİ ( 7.2 ) AUTHORIZE ATTRIBUTE VE ROL YETKİLENDİRME

Internet Application şablonunda yeni bir proje oluşturduğumuzda, SimpleMembershipProvider varsayılan olarak gelmektedir. Hiçbir değişiklik yapmadan direk olarak bu üyelik sistemini kullanabilirsiniz. Ama MVC ye yeni başlayanlar bu konuda çok fazla mesai harcıyorlar. SimpleMembershipProvider, code first olarak geliştirilmiştir. Genişletilebilir bir yapısı vardır. Bu derste kendi üyelik sistemimizi nasıl yapabiliriz bu konuya değineceğim.

ASP.NET MVC DERSLERİ ( 7.1 ) AUTHORIZE ATTRIBUTE VE YETKİLENDİRME

MVC uygulamalarında, belirli bir metod ve ya controller sınıfı için üyelik gerektiğini belirlemek amaçlı olarak, AuthorizeAttribute nesnesini kullanabiliriz. Bu nesnenin hiç parametre almayan hali ile sadece kullanıcının giriş yapıp yapmadığını kontrol ederiz. Yani sistemdeki bazı yerleri, giriş yapmayan kullanıcılara kapatırız.

6 Ağustos 2013 Salı

ASP.NET MVC HABER SİTESİ V2

Haber sitesinin yeni versiyonunu github a yükledim. Yeni versiyonun adresi:

https://github.com/alirizaadiyahsi/HaberSitesiV2

Yeni versiyonu indirdikten sonra ilk yapılması gereken web.config dosyasında, aşağıdaki satırlarda ayarlama yapmak:

23 Haziran 2013 Pazar

ASP.NET MVC GHeatMap (google heat map) kullanımı

_Layout.cshtml
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width">
        <title>@ViewBag.Title</title>
        @Styles.Render("~/Content/css")
        @Scripts.Render("~/bundles/jquery")
        @Scripts.Render("~/bundles/modernizr")
        <script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?key=AIzaSyDaLyCTMxu8kuv2bHkY9EIxBMfpvNU83-Y&sensor=false&libraries=visualization">
        </script>
    </head>
    <body>
        @RenderBody()
        @RenderSection("scripts", required: false)
    </body>
</html>
Index.cstml
@{
    ViewBag.Title = "Index";
}
<script type="text/javascript">
    $(document).ready(function () {
        var map, mapProp;
        var heatmap;
        var pointArray = [];

        $.ajax({
            type: 'POST',
            url: '/Home/MapJson',
            success: function (data) {
                // pointArray dizisine gelen her datayı
                // atarak diziyi dolduruyoruz...
                $.each(data, function (index, data) {
                    pointArray.push({
                        location: new google.maps.LatLng(data.latitude, data.longtitude),
                        weight: data.weight
                    });
                });
            }
        });

        function initialize() {
            // harita ayarları yapılıyor
            // örneğin başlangıç noktası
            // ilk yakınlaşma değeri
            // ve grafigin tipi gibi ayarlar...
            mapProp = {
                center: new google.maps.LatLng(38.41, 27.22),
                zoom: 11,
                mapTypeId: google.maps.MapTypeId.ROADMAP
            };    
            map = new google.maps.Map(document.getElementById("googleMap"), mapProp);
            heatmap = new google.maps.visualization.HeatmapLayer({
                data: pointArray
            });
            // harita yukleniyor
            heatmap.setMap(map);
            heatmap.setOptions({ radius: 10, maxIntensity: 3 });
        }

        // ilk sayfa yüklemesinde harita ilkleniyor.
        google.maps.event.addDomListener(window, 'load', initialize);
    });
</script>

<div id="googleMap" style="width: 640px; height: 480px;">
</div>
HomeController.cs
public class HomeController : Controller
{
    //
    // GET: /Home/

    public ActionResult Index()
    {
        return View();
    }

    public ActionResult MapJson()
    {
        List<location> locations = new List<location>();

        locations.Add(new Location { latitude = 38.41, longtitude = 27.21, weight = 1 });
        locations.Add(new Location { latitude = 38.44, longtitude = 27.22, weight = 5 });
        locations.Add(new Location { latitude = 38.45, longtitude = 27.23, weight = 2 });
        locations.Add(new Location { latitude = 38.42, longtitude = 27.24, weight = 7 });
        locations.Add(new Location { latitude = 38.43, longtitude = 27.25, weight = 4 });
        locations.Add(new Location { latitude = 38.46, longtitude = 27.26, weight = 5 });
        locations.Add(new Location { latitude = 38.47, longtitude = 27.27, weight = 5 });
        locations.Add(new Location { latitude = 38.39, longtitude = 27.28, weight = 5 });

        return Json(locations);
    }
}
Location.cs
public class Location
{
    public double latitude { get; set; }
    public double longtitude { get; set; }
    public int weight { get; set; }
}
Çıktı:
enter image description here

10 Haziran 2013 Pazartesi

ASP.NET MVC DERSLERİ ( 7 ) ÜYELİK, YETKİLENDİRME VE GÜVENLİK

Güvenlik bir web uygulamasın için çok önemlidir. Çünkü web uygulamaları, dünyadaki tüm kullanıcılara açılan bir uygulamadır.

8 Haziran 2013 Cumartesi

ASP.NET MVC DERSLERİ ( 6.10 ) DATAANNOTATIONS DISPLAY VE EDIT ANNOTATIONS

Display
Daha önceki yazılarda bahsettiğimiz, kategori ekleme ekranını bir hatırlayalım. Ekran görüntüsü aşağıdaki gibi.

7 Haziran 2013 Cuma

ASP.NET MVC DERSLERİ ( 6.9 ) DATAANNOTATIONS CUSTOM VALIDATION

MVC framework un genişletilebilir olması demek, kendi doğrulama mantığımızı yazmak için sınırsız sayıda yöntemin olması demektir. Biz 2 temel senaryo üzerinde duracağız.

5 Haziran 2013 Çarşamba

ASP.NET MVC DERSLERİ ( 6.8 ) DATAANNOTATIONS PERDE ARKASI

Kendi dataannotations nesnelerimizi yazmak için, bu işin perde arkasını anlamak gerekiyor. Tüm bu validation işlemleri, model binders, model metadata, model validators, ve model state kavramları ile ilişkilidir. Şimdi sırasıyla başlıklar halinde bunlara değinelim.

30 Mayıs 2013 Perşembe

27 Mayıs 2013 Pazartesi

ASP.NET MVC DERSLERİ ( 6.6 ) DATAANNOTATIONS Remote ve Compare

System.Web.Mvc namespace içerisinde iki tane doğrulama niteliği (validation attributes) vardır. Bunlar Remote ve Compare nitelikleridir.

26 Mayıs 2013 Pazar

ASP.NET MVC DERSLERİ ( 6.5 ) DATAANNOTATIONS Range

Range

Bu nitelik sayısal değerler için aralık belirlemek için kullanılır. Örneğin bir yaş aralığı için;

23 Mayıs 2013 Perşembe

ASP.NET MVC DERSLERİ ( 6.4 ) DATAANNOTATIONS RegularExpression

RegularExpression

Regex tüm dillerde olan bir string doğrulama desenidir. MVC de de regex için bir nitelik (attribute) vardır. Regex girilen string değerin, bizim belirlediğimiz bir kurala göre olup olmadıgını belirlemek amaçlı kullanılır.

22 Mayıs 2013 Çarşamba

ASP.NET MVC DERSLERİ ( 6.3 ) DATAANNOTATIONS StringLength

StringLength

Bu nitelik ile girilecek değerin karakter uzunluğunu belirleriz. Bu tanımlama ile aynı zamanda Code First geliştirmede veritabanın oluşturulacak alan içinde, bu string uzunluğu tanımlanacaktır.

21 Mayıs 2013 Salı

ASP.NET MVC DERSLERİ ( 6.2 ) DATAANNOTATIONS Required

Daha önceki yazılarda EditorForModel helper elemanını görmüştük. Bu helper elemanını kullanınca, model üzerindeki özelliklere göre input elemanları oluşturuluyordu. Yani int tipi için bir textbox, bool tipi için bir checkbox, ... gibi.Bunlar MVC kendisi içerisindeki varsayılan şablonları (templated-helpers) kullanarak yapar.