Selamlar, Bu yazımızda MVC'de kullandığımız Razor kullanımının replace methodunu yazacağız. Kullanımı gayet basit. İlk olarak "StringReplace" adında bir method yazcağız.
Bu methodumuz iki paremetre alıcak. Bir "string" değer bir de "" tipinde class. Methodumuz şu şekilde ;

  public static string StringReplace(string template, T model)
        {
            try
            {
                return Razor.Parse(template, model);
            }
            catch (Exception ex)
            {

                return "Razor Parse Hatası : " + ex.ToString();
            }

        }

Ben kendim "ProductModel" adında örnek bir nesne oluşturarak replace methodunu kullandım. tipinde parametre almamızın sebebi istediğimiz classı parametre olarak verebilmek için. Örnek kullanım şu şekilde ; ProductModel kısmında ekstra birşey yok. Üç adet property var.

 public class ProductModel
    {
        public string Name { get; set; }
        public string Category { get; set; }
        public decimal Price { get; set; }
    }
MVC Controller tarafında ise şu tarzda kullanabiliriz ;
  public ActionResult Index()
        {
            string razorString = "@Model.Name adında bir ürünümüz var. Bu ürünün fiyatı @Model.Price değerinde ve @Model.Category kategorisinde bulunuyor.";
            var productModel = new ProductModel
            {
                Category = "Ayakkabı",
                Name = "Krampon",
                Price = 187
            };
            return Content(StringReplace(razorString, productModel));
        }
Yazdığımız string değerinde içinde ki "@Model.Name, @Model.Category ve @Model.Price" değerlerinin ProductModel içerisinde ki propertylerin adları olduğunu görüceksiniz. Ben çıktısını direk olarak sayfaya bastım.
Siz farklı şekillerde kullanabilirsiniz. MVC Razor Page kullanımı bu şekilde gayet basit.

 

Samet ÇINAR Hakkında

2010 senesinden bu yana hem tam zamanlı hemde freelance olarak Yazılım Geliştirme Uzmanı olarak çalışmaktayım. Her gün daha güzel geliştirmeler yapmak için araştırıp öğrenmeyi, öğrendiklerimi aktarmayı çok seviyorum.

İLGİLİ YAZILAR

YORUMLAR

Yorum Yap