.cshtml etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
.cshtml etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

13 Şubat 2024 Salı

ASP.NET VİEW NEDİR

 

 

 

ASP.NET MVC'de "View", kullanıcı arayüzünün (UI) oluşturulduğu ve sunulduğu bileşendir. ASP.NET MVC uygulamalarında, model verileri (veri) bir Controller'dan bir View'e (kullanıcı arayüzü) iletilebilir ve View, bu model verilerini kullanarak kullanıcıya bilgi sunar. View, HTML, CSS ve JavaScript gibi web teknolojilerini kullanarak kullanıcı arayüzünü oluşturur ve sunar. Bu, bir web sayfasının veya web uygulamasının kullanıcıya görüntülenen kısmını temsil eder.

Share:

11 Şubat 2024 Pazar

ASP.NET'te HtmlEncode, HtmlDecode ve HtmlRaw

 

ASP.NET'de sıkça kullanılan ve web uygulamalarında HTML içeriğiyle ilgili güvenlik ve görüntüleme sorunlarını ele almak için kullanılan üç önemli yöntemdir.

  1. HtmlEncode: Bu yöntem, bir metin dizesindeki HTML özel karakterlerini HTML kodlarına dönüştürmek için kullanılır. Örneğin, <, >, &, ", ' gibi karakterler HTML belgesi içerisinde özel anlamlara sahiptir. HtmlEncode metodu, bu karakterleri güvenli bir şekilde kodlayarak tarayıcıya aktarılmasını sağlar ve kullanıcıların kötü niyetli kod enjeksiyonu saldırılarından korunmasına yardımcı olur.

  2. HtmlDecode: HtmlEncode'in tam tersi olarak çalışır. Bu yöntem, bir HTML kodunu gerçek metin haline dönüştürmek için kullanılır. Örneğin, bir veritabanından alınan bir metin dizesi HTML kodlarını içeriyor olabilir. Bu kodlar, tarayıcıda doğru şekilde görüntülenmeden önce HtmlDecode metodu ile orijinal metin haline dönüştürülmelidir.

  3. HtmlRaw: Bu yöntem, bir metin dizesinin HTML içeriği olduğunu belirtmek için kullanılır. Eğer bir metin dizesinin içeriğinin zaten güvenli olduğu ve HTML olarak yorumlanması gerektiğinde HtmlRaw kullanılır. Bu yöntem, ASP.NET Core MVC ve Razor sayfalarında sıklıkla kullanılır. HtmlRaw kullanıldığında, ASP.NET belirtilen metni doğrudan HTML olarak render eder, bu nedenle güvenliği sağlamak için dikkatli olunmalıdır ve kullanıcı tarafından sağlanan verilerin doğrudan HtmlRaw kullanılarak işlenmesinden kaçınılmalıdır.

  1. HtmlEncode Örneği:
csharp
string originalText = "<script>alert('Merhaba!');</script>"; string encodedText = System.Web.HttpUtility.HtmlEncode(originalText); // encodedText şimdi "&lt;script&gt;alert('Merhaba!');&lt;/script&gt;" içeriğine sahiptir.
  1. HtmlDecode Örneği:
csharp
string encodedText = "&lt;script&gt;alert('Merhaba!');&lt;/script&gt;"; string decodedText = System.Web.HttpUtility.HtmlDecode(encodedText); // decodedText şimdi "<script>alert('Merhaba!');</script>" içeriğine sahiptir.
  1. HtmlRaw Örneği (Razor Pages veya Razor View Engine kullanılarak):
csharp
@Html.Raw("<h1>Merhaba dünya!</h1>") // Bu kod, tarayıcıya gönderilen HTML içeriğinin doğrudan render edilmesini sağlar.

Bu örneklerde görüldüğü gibi, HtmlEncode metodu HTML içeriğini güvenli bir şekilde kodlarken, HtmlDecode metodu bu kodlanmış içeriği orijinal haline döndürmek için kullanılır. HtmlRaw ise, ASP.NET Razor sayfalarında veya Razor View Engine kullanılarak HTML içeriğinin doğrudan render edilmesini sağlar.

Share:

Razor View Engine Nedir

 


Razor View Engine Nedir

Razor View Engine, ASP.NET MVC ve ASP.NET Core gibi web uygulamaları geliştirmek için kullanılan bir görünüm motorudur. Razor, HTML ve C# gibi kodu aynı dosyada bir arada kullanmanıza olanak tanır, bu da web sayfalarınızı daha okunabilir ve yönetilebilir hale getirir.

Razor, genellikle .cshtml (C# ile HTML) veya .vbhtml (Visual Basic ile HTML) uzantılarına sahip dosyalarda kullanılır. Bu dosyalarda, HTML markup'ı ve C# veya Visual Basic kodu bir arada kullanılabilir. Kod ve HTML, birbirinden kolayca ayırt edilebilir ve daha temiz bir görünüm sunar.

Örneğin, bir Razor dosyasında, bir döngü veya koşullu ifadeler kullanarak dinamik içerik oluşturabilirsiniz. Aynı zamanda C# veya Visual Basic kodu kullanarak veritabanı işlemleri veya diğer iş mantığı işlemlerini gerçekleştirebilirsiniz.

Razor, ASP.NET MVC ve ASP.NET Core gibi çerçevelerde yaygın olarak kullanılmaktadır çünkü geliştiricilere güçlü bir araç sunar ve sunum katmanını yönetmeyi kolaylaştırır.

Share: