They also minimalist,Cheap Jordan 1 Og Fearless so they go with whatever you wearing.. The players were broken into two groups: wing and big. Forgot about that. Seb you have your right to your ideas and your research. Then, the Force came a calling and Johnson sidelined his whodunnit to clear space for The Last Jedi.When I ask Johnson what changed between taking the Star Wars job in 2014 and sitting down to write Knives Out in early 2018 that may have influenced the latter, he deadpans:Cheap Jordan 1 Og Volt Gold can think of one big event. Everyone argues over the mundane facts when it comes to issues like these, like how we must validate the late president with more than a measly five dollar bill, or how the penny is worth less than any piece of engraved metal in the world. For starters, some harbored resentment over his serving as the consolation prize when the Bulls failed to land the Big Three of LeBron James, Dwyane Wade and Chris Bosh that ended up with the Heat. If they bother you, try washing them off with a strong stream of water or deep breath Air Jordan 11 Low Easter smooshing them with gloved fingers.).

VS Code ile Katmanlı Mimari Yönetimi – Baki Altun İçeriğe geç →

VS Code ile Katmanlı Mimari Yönetimi

Visual Studio Code ile birden çok katman yönetimine değineceğim. VS 2017 ‘de oluşturduğumuz projede çalışırken bizim için hepsini hallediyor. Vs Code ile bu kolaylık sağlamıyor.

İlk önce boş bir klasör açalım. Ve terminale aşağıdaki komutları girelim

mkdir Web 
mkdir Business
mkdir Interface

Bu işlem çalışmaya yaptığımız yere klasörlerimizi oluşturdu. Şimdi aşağıdaki komutları girerek web projemizi oluşturalım.

cd Web
dotnet new web
dotnet restore
dotnet build

Business ve Interface klasörlerin içerisine class library oluşturalım.

cd ../Business
dotnet new classlib
dotnet restore
dotnet build
cd ../Interface
dotnet new classlib
dotnet restore
dotnet build
cd ../

Yaptığımız düzenlemeler aşağıdaki örnekteki gibi olacaktır.

Bu adıma kadar gelmek kolaydı. Projeleri birbirlerine reference olarak eklemeliyiz.

İlk önce Web.csproj dosyasını açıp içine kod örneğinde olduğu gibi ItemGroup etiketi ile birlikte ekliyoruz.

<Project Sdk="Microsoft.NET.Sdk.Web">

  ...
  ...

  <ItemGroup>
      <ProjectReference Include="..\Business\Business.csproj" />
  </ItemGroup>
</Project>

Daha sonra Business.csproj dosyasını açıp aşağıdaki gibi düzenliyoruz

<Project Sdk="Microsoft.NET.Sdk">

  ...
  ...
  <ItemGroup>
    <ProjectReference Include="..\Interface\Interface.csproj" />
  </ItemGroup>
</Project>

Referanslarımızı ekledik. Son olarak web projemizi restore etmemiz lazım. Aşağıdaki komutları girerek yapabilirsiniz.

cd Web
dotnet restore
dotnet build

Bundan sonra yaptıklarımız üzerine basit bir örnek yapalım.

Interface katmanın içersine ITestService.cs dosyası oluşturup içerisine  aşağıdaki kodları ekliyorum

using System;

namespace Interface
{
    public interface ITestService
    {
         string GetExampleText();
    }
}

Business katmanın içerisine TestService.cs dosyası oluşturup aşağıdaki kodları yazalım

using System;
using Interface;

namespace Business
{
    public class TestService : ITestService
    {
        public string GetExampleText()
        {
            return "TestService'den gelen bilgidir.";
        }
    }
}

Web projemin içerisinde olan Startup.cs açıp düzenlememi yaptığımda aşağıdaki gibi oluyor.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.DependencyInjection;
using Business;
using Interface;

namespace Web
{
    public class Startup
    { 
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddMvc();

            services.AddTransient<ITestService,TestService>();
        }
 
        public void Configure(IApplicationBuilder app, IHostingEnvironment env)
        {
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }

            app.UseMvcWithDefaultRoute();
        }
    }
}

Son olarak Web projemin içerisene Controllers klasörü ekleyip içersine aşağıdaki dosyayı ekliyorum

using System;
using Interface;
using Microsoft.AspNetCore.Mvc;

namespace Web
{ 
    public class HomeController : Controller
    {
        private readonly ITestService _testService;
        public HomeController(ITestService testService)
        {
            _testService= testService;
        }
        public string Index()
        {
            return _testService.GetExampleText();
        }
    }
}

Şimdi aşağıdaki komutları girerek uygulamayı çalıştıralım.

cd Web
dotnet restore
dotnet build
dotnet run

Tarayıcı ile açtığımızda aşağıdaki gibi ekran gelecektir.