Osman KURT

Kendime Not

AngularJs ile Listeleme Yapmak

Merhaba arkadaşlar,

İlk olarak bir adet MVC projesi oluşturuyoruz ve projemize nuget paket olarak AngularJs kuruyoruz.

install-package angularjs

install-package angularjs.Route

Gerekli kurulumları yaptıktan sonra alt kısımda bulunan kod parçalarını ilgili yerlere ekleyerek listemizi görebilirsiniz.

Index.cshtml

<html>
<head>
    <meta name="viewport" content="width=device-width" />
    <title>Index</title>
</head>
<body>
    <div ng-app="myApp" ng-controller="myController">
        <div ng-repeat="kisi in kisiler">
            <span>{{kisi.AdSoyad}}</span> <span>{{kisi.Yas}}</span>
        </div>
    </div>

    <script src="~/Scripts/angular.min.js"></script>
    <script type="text/javascript">
        (function (angular) {
            function Controller($scope, $http) {
                $http.get("/Home/UserList").then(function (response) {
                    $scope.kisiler = response.data;
                });
            }
     angular.module("myApp", []).controller("myController", ["$scope", "$http", Controller]);
        })(angular);
    </script>       

</body>
</html>
 public class User
    {
        public string AdSoyad { get; set; }
        public int Yas { get; set; }
    }

HomeController.cs

public JsonResult UserList()
    {
        List list = new List();
        list.Add(new Models.User() { AdSoyad = "Osman KURT", Yas = 30 });
        return Json(list, JsonRequestBehavior.AllowGet);
    }

Görüşmek üzere
Osman KURT
Yazılım Uzmanı


Fluent Validation Kullanımı C#

Validation kullanımı son derece önemli parçalar kodlar için. Her seferin de bunu if şeklinde yapmak ne derece mantıklı. Bu yüzden Fluent Validation bu gibi durumlar için son derece ideal bir yapı.

Öncelikla kullanmak istediğiniz projeye nuget'dan FluentValidation eklentisini kurmanız gerekmekte.

Örnek kullanımına gelince;


    public class Company
    {
        public int CompanyID { get; set; }
        public string CompanyName { get; set; }
    }
    public class CompanyValidation : AbstractValidator<Company>
    {
        public CompanyValidation()
        {
            CascadeMode = CascadeMode.StopOnFirstFailure;
            RuleFor(x => x.CompanyID)
                .NotEmpty()
                .NotNull()
                .WithMessage("CompanyID Boş Geçilemez");
            RuleFor(x => x.CompanyName)
                .NotEmpty()
                .NotNull()
                .WithMessage("CompanyName Boş Geçilemez");
        }
    }

    public ActionResult Index(Company company)
        {
            var validator = new CompanyValidation();
            var validationresult = validator.Validate(company);
            if (validationresult.IsValid)
            {
                return View();
            }
            else
            {
                return null;
            }
        }

Bu kodları kendinize göre uyarlayıp çalıştırdığınız da işinizin basit bir şekilde gerçekleştiğini göreceksiniz.

Osman KURT
Yazılım Uzmanı

MVC'de Mobile Sayfa Ayırımı

Merhabalar,

Gelişen Asp.Net MVC'de bizler için bir güzellik daha var. Hepimiz web sayfaları geliştirirken yeni nesil responsive tasarımlar için var gücümüzle çalışıyoruz. Ancak bazı durumlarda bunu başarmak zorlaşabiliyor.

İşte bu gibi durumlarda Mobile için özel tasarımlar hazırlamak gerekiyor. Bunu yaparken de gelen kullanıcıya göre yönlendirme yapmak lazım.

Yönlendir kısmında işin en güzel tarafı ise şu; Home dizini altında ki Index.cshtml sayfası için mobil bir sayfa oluşturmamız gerekiyorsa bunu Index.Mobile.cshtml şeklinde oluşturduğumuzda işimizin tamamlanmış olması.

Sizce de güzel değil mi?

Osman KURT
Yazılım Uzmanı