Merhaba arkadaşlar bu örnek projemde sizlere Rss Reader ilgili bir örnek yapıcam RSS Reader Nedir ?
Rss Reader bir açıklaması olarak şunu diyebiliriz
Genelde yaptıgımız projeler makale gibi yayınlarımızı kullanıcılar RSS Okuyucular üzerinden ,de Takip Edebilir
Kısacası bir Web Servis Sağlayıcısı Diyebiliriz

using System;
using System.Windows.Forms;
using System.Xml;
namespace RRSReaderControler
{
public partial class frmMain : Form
{
XmlTextReader rssReader;
XmlDocument rssDoc;
XmlNode nodeRss;
XmlNode nodeChannel;
XmlNode nodeItem;
ListViewItem rowNews;
public frmMain()
{
InitializeComponent();
}
private void btnHedefUrl_Click(object sender, EventArgs e)
{
try
{
prgBar.Value = 0;
lstHaber.Items.Clear();
if (txtAdres.Text != null)
{
Cursor = Cursors.WaitCursor;
}
else
{
MessageBox.Show(" Lütfen Hedef Adresi Giriniz", "Hata", MessageBoxButtons.OK, MessageBoxIcon.Stop);
txtAdres.Focus();
}
MessageBox.Show("Rss Feed Listelensinmi", "Mesaj", MessageBoxButtons.OK, MessageBoxIcon.Warning);
// yeni bir xmltext reader oluştur
rssReader = new XmlTextReader(txtAdres.Text);
rssDoc = new XmlDocument();
// xmldocument içine rss yükle
rssDoc.Load(rssReader);
// // rrsdocument childnode count kadar dön
for (int i = 0; i < rssDoc.ChildNodes.Count; i++)
{
// rss tag childnode name rss dönder
if (rssDoc.ChildNodes[i].Name == "rss")
{
nodeRss = rssDoc.ChildNodes[i];
}
}
// eger channel tag name channel döner
for (int i = 0; i < nodeRss.ChildNodes.Count; i++)
{
//
if (nodeRss.ChildNodes[i].Name == "channel")
{
//
nodeChannel = nodeRss.ChildNodes[i];
}
}
// Rss Kimlik bilgilerini tanimla
if (nodeChannel != null)
{
lblbaslik.Text = "Title: " + nodeChannel["title"].InnerText;
lbldil.Text = "Language: " + nodeChannel["language"].InnerText;
if (nodeChannel != null)
{
lbllink.Text = "Link: " + nodeChannel["link"].InnerText;
if (nodeChannel != null)
{
lblAciklama.Text = "Description: " + nodeChannel["description"].InnerText;
// tüm tag dön ve channel item göster
for (int i = 0; i < nodeChannel.ChildNodes.Count; i++)
{
// channel childnode lstviewıtem ekle
if (nodeChannel.ChildNodes[i].Name == "item")
{
nodeItem = nodeChannel.ChildNodes[i];
// yeni bir lstviewitem oluştur node listview item ekle
rowNews = new ListViewItem { Text = nodeItem["title"].InnerText };
if (nodeItem != null) rowNews.SubItems.Add(nodeItem["link"].InnerText);
lstHaber.Items.Add(rowNews);
// işlemi adim adim bitir
prgBar.PerformStep();
}
}
}
}
}
Cursor = Cursors.Default;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message + "Böyle bir Rss Adresi Yok ", "Geçersiz Adres ", MessageBoxButtons.OK,
MessageBoxIcon.Warning);
}
}
private void lstHaber_SelectedIndexChanged(object sender, EventArgs e)
{
// secilen select item tüm node içeriklerinde dön ve listeyi göster
if (lstHaber.SelectedItems.Count == 1)
{
for (int i = 0; i < nodeChannel.ChildNodes.Count; i++)
{
//
if (nodeChannel.ChildNodes[i].Name == "item")
{
//
nodeItem = nodeChannel.ChildNodes[i];
//
if (nodeItem != null)
if (nodeItem["title"].InnerText == lstHaber.SelectedItems[0].Text)
{
//
if (nodeItem != null) txtIcerik.Text = nodeItem["description"].InnerText;
//
break;
}
}
}
}
}
private void lstHaber_DoubleClick(object sender, EventArgs e)
{
// secilen selectitem listeyi text göster
System.Diagnostics.Process.Start(lstHaber.SelectedItems[0].SubItems[1].Text);
}
private void cbmHedefListeler_SelectedIndexChanged(object sender, EventArgs e)
{
txtAdres.Text = cbmHedefListeler.SelectedItem.ToString();
cbmHedefListeler.SelectedText = "";
txtAdres.Focus();
}
// temizlik yap
void Temizle()
{
foreach (Control ctr in Controls)
{
if (ctr is TextBox)
(ctr as TextBox).Clear();
}
}
private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
frmAbout ab = new frmAbout();
ab.Show();
}
private void frmMain_Load(object sender, EventArgs e)
{
lblTarih.Text = DateTime.Now.ToLongDateString();
}
private void frmMain_Load_1(object sender, EventArgs e)
{
lblTarih.Text = DateTime.Now.ToLongDateString();
lblSaat.Text = DateTime.Now.ToLongTimeString();
}
}
}
Projenin Download Adresi indir
Evet Arkadaşlar genel bir projenin sonuna daha gelmiş olduk yeni bir projede görüşmek üzere herkeze iyi calışmalar
Currently rated 4.0 by 2 people
- Currently 4/5 Stars.
- 1
- 2
- 3
- 4
- 5
C# , Tüm Projelerim
c# rss reader list