Jump to content
Forumu Destekleyenlere Katılın ×
Paticik Forumları
2000 lerden beri faal olan, çok şukela bir paylaşım platformuyuz. Hoşgeldiniz.

StreamReader ve QueryString kullanarak template yapımıin


b1vRiP

Öne çıkan mesajlar

Yaptığım web sitesi için StreamReader ve QueryString kullanarak template yapmak istiyorum ama açıkçası asp.net neredeyse hiç bilmediğim için nasıl yapacağımı çözemedim.
ayrıca .aspx olarak kaydettiğim dosyaları direk operayla açarsam yazdığım kod çalışır mı? xp kullanıyorum.

yardım edip yol gösterebilirseniz çok sevinirim.
Link to comment
Sosyal ağlarda paylaş

Aspx sayfaları server uygulaması olarak çalıştığı için direk operayla açınca çalışmaz. local'de kontrol edeceksen visual studio içinden açıp, sağ tıklayıp, browse with diyeceksin. Sonra operayı seçiceksin işte açılacak.
Template yapmak istediğin şey nasıl bişey tam anlatabilir misin? Belki yardım edebilirim.
Link to comment
Sosyal ağlarda paylaş

sitede sadece ortada bir div'in içi değişecek. bir sürü teplate yolu buldum bunu yapacak ama StreamReader kullanırsam sanki kolay olacak gibi. amacım şu bütün içerikler .txt olarak ve html formatında kaydedilmiş durumda. ben bu div'in içine StreamReader kullanarak bu txt dosyalarından herhangi birini okuyacağım. böylece içeriğim değişmiş olacak? hangi .txt dosyasını okuyacağıma da QueryString ile karar vereceğim.

mantığımı oturttum ama asp.net bilmediğim için pratiğe dökemiyorum. biraz içgüdülerime güvenip denedim bir şeyler ama olmadı..
Link to comment
Sosyal ağlarda paylaş

get querystring:

string query = Request.QueryString[tmp];
if (query != null)
{
Response.Write(query);
}

bu kod parçacığını Page_Load eventinde kullanarak, "tmp" keyine ait value'ya erişebilirsin. default.aspx?tmp=12 örneği gibi..

lakin diğer konuya gelirsek; template mantığı, pek de template mantığı gibi gelmedi bana.. yani sen bir div'in içinde html basacaksın ama bunun server-side kontrolleri ne olacak? misal butonlar vs.? template sadece html'den oluşmamalı.. yani diğer türlü düz html, dinamik olmayan bir sayfan olur.

gibi taglerin olmalı template html içinde.. sonra sen onu server tarafında txt içinden stream edip, replace etmelisin senin kontrolünle.. böylece sayfayı dinamik olarak basarsın ama bu sadece Response.Write(); işlemi değil. zira dinamik yaratman gereken kontroller de olacak. string değil tüm sayfa.
Link to comment
Sosyal ağlarda paylaş

değişecek div'in dışında zaten her şey html ile yazılmış ve dinamik bir durumda.

benim düşüncem şöyle idi.

sayfa yüklenirken dışarıdaki .txt dosyasına yazdığım html,js gibi kısımlar gömülcek html'in içine StreamReader ile içine okuduğum zaman. neyin içine gömüleceğine de QueryString ile karar vereceğim. yanlış mı düşünüyorum?
Link to comment
Sosyal ağlarda paylaş

açıkçası biraz kavram karmaşası oldu galiba.. olay template değil anladığım kadarıyla? sen içeriği txt dosyalarından raw haliyle, yani html içinde çekmekten bahsediyorsun?

yani yaptığın şeyin doğru olduğunu pek -sanmıyorum-. ama emin de olamadım, çünkü ne yapmak istediğini tam anlamadım.

querystring konusuna gelirsek.. querystring'in doğru olup olmadığına, ancak kullanım amacın doğrultusunda karar verilebilir. misal son kullanıcının, url'ye müdahale ederek template(?) değiştirmesini istemiyorsan, querystring kullanmamalısın. sayfa içinde post etmelisin. ya da üyelik varsa, üyenin seçimini bir yere (db, xml vs..) kaydedip, oradan okuyarak template'i çağırmalısın. session kullanabilirsin. bir de her sayfada aynı template'i kullanma gibi bir şey varsa, biraz sıkıntı çıkarır. zira devamlı querystring basman lazım, sayfa request ederken. bunu kontrol etmen falan, mantıklı olmaz.

ama işte yapmak istediğini ve dolayısıyla ihtiyaçlarını bilmediğimiz için, sadece afaki olarak ihtimalleri göz önünde bulundurabiliriz. doğrudan "evet olur" ya da "olmaz" demek zor. zira teknik olarak olur ama doğrusu bu mudur? anlayamıyoruz.
Link to comment
Sosyal ağlarda paylaş

amacım şuydu baştan dediğim gibi. değişecek olan kısmı sitemde bir div içine aldım. nası template yaparım diye düşünürken de böyle bir şey geldi aklıma. neyse abimden aldığım yardımla sonuca ulaştım sanırım şimdi her şey daha açık olacak.

önce değişecek olan div'i şöyle yapıyoruz default.aspx dosyasında:

<%
System.IO.StreamReader sr = new System.IO.StreamReader(Server.MapPath(Request.QueryString[content].ToString()+".txt"));
Response.Write(sr.ReadToEnd());
sr.Close();
%>


sonra da linkleri şöyle yaparak:
/default.aspx?content=txtdosyaadi

ve her istediğimiz sayfa için raw bir txt dosyası hazırlıyoruz ve istediğimiz sonuca ulaşıyoruz. kötü yönleri nelerdir bilemiyorum ama benim istediğim sonuca gayet pratik bir ulaşım oldu. siz ne düşünüyorsunuz?
Link to comment
Sosyal ağlarda paylaş

×
×
  • Yeni Oluştur...