1. Haberler
  2. Programlama
  3. Real Estate Projesi ASPNET CORE 8.0 bölüm 18

Real Estate Projesi ASPNET CORE 8.0 bölüm 18

Murat Yücedağ'ın AspNet Core 8.0 ile Api Dapper gibi teknolojileri kullandığı Real Estate serisinin 18. bölümünü izledim. Bu bölümde yapılanları size anlatmaya çalıştım. AspNet Core ile geliştirilen bu projede her ders için blog yazısı yazmaya çalışacağım. Sizler de bu blog serisini takip ederek dahada pekiştirmiş olursunuz. Ben Eyüp Furkan Tüylü. AspNet Core 8.0 projesine hepiniz hoş geldiniz!

Real Estate Projesi ASPNET CORE 8.0 bölüm 18 - murat yücedağ - eyüp furkan tüylü
Real Estate Projesi ASPNET CORE 8.0 bölüm 18 - murat yücedağ - eyüp furkan tüylü
Paylaş

Bu Yazıyı Paylaş

veya linki kopyala

Anlatıma geçmeden önce AspNet Core 8.0 ile geliştirdiğimiz bu projeye ait linkleri aşağıda sıraladım.

AspNet Core 8.0 projesi için linkler

GitHub

Video Linki

Ayrıca bir önceki yazıyı okumadıysanız;

Bir önceki yazı
thumbnail
Real Estate Projesi ASPNET CORE 8.0 bölüm 17
Haberi görüntüle

AspNet Core ile geliştirdiğimiz projenin bu bölümünde “hizmetler” kısmına verilerimizi getirmek için API’yi “consume” ediyoruz.

image

Amacımız görseldeki maddeleri datadan çekmek ve ui katmanında yazdırmak.

Üst kısımdaki başlık, yazı ve alt yazıyı bir önceki ders getirmiştik. Bunu “_DefaultWhoWeAreComponentPartial” içerisinde yapmıştık. Bahsettiğim kısım ViewComponent olan kısım. Şimdi ise aynı dosya içerisinde bir istek daha atarak maddelerimizi getirebiliriz. Bu maddeleri Service tablosunda tutmuştuk. Hatta API’sini de hazırlamıştık. Dolayısıyla bize kalan API consume işlemi.

Dosya yolu:

UI > ViewComponents > HomePage > _DefaultWhoWeAreComponentPartial.cs

Kod bloğumuz InvokeAsync kısmı. Buranın üzerinde çalışacağız. Başlamadan önceki hali şöyleydi;

image 1

Kodu değiştiğimizde ise şu şekilde gözüküyor. Aşağıda kod bloğunu text halini de ekliyor olacağım.

image 2
public async Task<IViewComponentResult> InvokeAsync()
		{
			var client = _httpClientFactory.CreateClient();
			var client2 = _httpClientFactory.CreateClient();
			var responseMessage = await client.GetAsync("http://localhost:5010/api/WhoWeAreDetail");
			var responseMessage2 = await client2.GetAsync("http://localhost:5010/api/Service");

			if (responseMessage.IsSuccessStatusCode && responseMessage2.IsSuccessStatusCode)
			{
				var jsonData = await responseMessage.Content.ReadAsStringAsync();
				var jsonData2 = await responseMessage2.Content.ReadAsStringAsync();
 
				var value = JsonConvert.DeserializeObject<List<ResultWhoWeAreDetailDto>>(jsonData);
				var value2 = JsonConvert.DeserializeObject<List<ResaultServiceDto>>(jsonData2); 
				
				ViewBag.title = value.Select(x => x.Title).FirstOrDefault();
				ViewBag.subtitle = value.Select(x => x.Subtitle).FirstOrDefault();
				ViewBag.description1 = value.Select(x => x.Description1).FirstOrDefault();
				ViewBag.description2 = value.Select(x => x.Description2).FirstOrDefault();
				return View(value2);
			}
			return View();
		}

Şimdi sırada Default.cshtml düzenlemek var.

Default.cshtml Düzenlenmesi

Burada artık bir model aldığımız için using işlemi uygulamalıyız. Ancak bunu sürekli olarak yapmamak için Views klasöründe yer alan _ViewImports.cshtml dosyasına bunu ekleyebiliriz.

@using RealEstate_Dapper_UI
@using RealEstate_Dapper_UI.Models
@using RealEstate_Dapper_UI.Dtos.WhoWeAreDetailDtos
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers

Şimdi Default.cshtml’de

@model List<ResaultServiceDto>

diyebileceğiz. Çünkü otomatik olarak ViewImports klasöründe Dto’nun yolunu belirttik.

Ardından maddelerimizn olduğu kısmı foreach döngüsüne alarak ekrana yazdırma işlemini gerçekleştirebiliriz.

<ul class="w3l-right-book w3l-right-book-grid mt-md-5 mt-4">
                            @foreach (var item in Model)
                            {
                                <li><span class="fa fa-check" aria-hidden="true"></span>@item.ServiceName</li>
                            }
                        </ul>
image 3

Bu işlemi yapıp test ettiğimizde Service tablosundaki verilerimizin geldiğini görebiliyoruz.

0
mutlu
Mutlu
0
_zg_n
Üzgün
0
sinirli
Sinirli
0
_a_rm_
Şaşırmış
0
k_t_
Kötü
0
beynim_yand_
Beynim Yandı
0
_eytani
Şeytani
Real Estate Projesi ASPNET CORE 8.0 bölüm 18
Yorum Yap

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Giriş Yap

Eyüp Furkan Tüylü ayrıcalıklarından yararlanmak için hemen giriş yapın veya hesap oluşturun, üstelik tamamen ücretsiz!