Soran
Db den gelen text içinde ki değer ile partialview render etmek

Genel Tartışma
-
Merhaba arkadaşlar
mvc de şöyle bir ihtiyacım var. örnek veriyorum db de sayfalar adında bir tablom var sitemdeki tüm sayfalarımı dinamik olarak oluşturuyorum.
bir kolon da sayfanın içeriğini tutuyorum. burada içerik aralarında kendim bir rule yapıp bu rule içindeki değere göre rule u yazdığım konuma o isimdeki partialview ı render etmek istiyorum. Biraz daha açmam gerekirse.
sayfalar adındaki tablomda iletişim isimli bir kayıtım olduğunu düşünün.
sayfa içeriğinin görüneceği kolonda, iletişim adresi telefon numarası vs. html olarak geliyor. en sona da {modul:contact} diye bir rule yazdım. Ben partial viewı sayfamda gösterirken {modul:contact} kısmını string olarak değilde modul klasörümdeki contact partial view ile render edilsin istiyorum. Bu konuda yardımcı olabilecek arkadaşlara şimdiden teşekkür ederim.
- Değiştirilmiş Tür Kyamuran SalibryamMicrosoft contingent staff, Moderator 15 Aralık 2016 Perşembe 13:51
Tüm Yanıtlar
-
-
-
şimdilik şu şekilde çözdüm ama ne kadar doğru bir yöntem bilemiyorum.
@{ string ContentText = Model.Content.ContentText; int startIndex = 0; if (!string.IsNullOrEmpty(ContentText)) { while (true) { int start = ContentText.IndexOf("{modul:", startIndex); int end = ContentText.IndexOf('}', startIndex); if (start != -1) { int d = start - startIndex; @(new HtmlString(ContentText.Substring(startIndex, d))) int getLength = end - start; string module = ContentText.Substring(start, getLength); module = module.Replace("{modul:", ""); string modulePath = "~/Views/" + module + "/Index.cshtml"; @Html.Partial(modulePath, Model); startIndex = end + 1; } else { int getLength = ContentText.Length - startIndex; @(new HtmlString(ContentText.Substring(startIndex, getLength))) break; } } } else { } }