Osman KURT

Yazılım Uzmanı

ASP.Net de Veri Gösterirken Karakter Sınırlaması Getirme

Arakadaşlar bu yazımızda veri gösterirken karakter sınırlaması getirmeye değineceğim. Bu konu nerede işimize yarar  öncelikle onu anlatayım.

Mesela kurumsal bir web sayfası yapıyorsunuz. Sayfanızda ürün listelemeniz lazım. Default. sayfasında ürünün adı fiyatı ve kısa bir açıklama gelecek detay linkine tıklanıldığında ise ürünün detayına gidicek. İşte karakter sınırlaması burada işimize yarıyor. Veri girerken adminin ortalama 5000 karakter girdiğini düşünelim biz sedece bunun 200 kadarını default ta göstermek istiyoruz ki görüntü bozulmasın kullanıcı da ürün hakkında fikir edinsin. Kısaca amaç bu çok yönlü kullanılabilir kod olacak.

Lafı uzatmadan kodlarıma geçelim ve bir adet fonksiyon yazalım.Tabi ki kütüphanemizi eklemeyi unutmadan.

using System.Text.RegularExpressions;

public string metin_kisalt_yan(string metin)

    {

        metin = Regex.Replace(metin, @"<(.\n)*?>", string.Empty);

        if (metin.Length > 120) metin = metin.Substring(0, 120);

        metin = metin + "...";

        return metin;

    } 

Cs tarafımız da yazacağımız fonksiyon bu kadar. Şimdiki işlemimiz ise veriyi ne ile listeliyorsak (DataList,Repeater) o kısım da fonksiyonumuzu çağırmaya geldi.

Bu alandaki kodlarımız da alt kısımda ki gibidir.

 

<asp:DataList ID="DataList1" runat="server">

                <ItemTemplate>

                        <%#metin_kisalt_yan(Eval("Aciklama").ToString().Trim()) %>

                </ItemTemplate>

</asp:DataList>

 

Gösterirken ki kodlarımızıda yazdığımıza göre bu yazımızın da sonuna geldik.Yararlı olması dileğiyle,

Görüşmek Üzere

Osman KURT

Yazılım Geliştirici ve Grafiker

ASP.Net de E-Ticaret Sepete Ekle Uygulaması

Arakadaşlar bu yazımıda e-ticaret uyugulamalarında kullanmak üzere hazırlanan sepete ekle uygulaması bulunmaktadır. Kullanmaktan ziyade işin mantığını kavramanıza yardımcı olabilecek bir uygulama olduğunu düşünüyorum.

 Örneği eticaret.rar (3,52 kb) linkinden indirebilirsiniz.

Görüşmek üzere

Osman KURT

Yazılım Geliştirici ve Grafiker 

ASP.Net de Calender Kullanımı

Tarih olaylarında web sayfalarımızda kullanmamıza yarayacak bir araçtır calender. Çok kullanışlı bir yapısı ve kasmayan bir performansıyla biz developer ve kullanıcılara zorluk çıkarmayan bir işlevselliğe sahiptir.
Lafı uzatmadan gelelim kullanımına;
Öncelike default.aspx sayfamıza

<asp:Calendar ID="Calendar1" runat="server" ShowGridLines="True" BorderColor="Gray"
Font-Names="Verdana" Font-Size="8pt" Height="200px" ForeColor="#663399" DayNameFormat="FirstLetter"
Width="220px" BackColor="#FFFFCC" BorderWidth="1px" OnSelectionChanged="Calendar1_SelectionChanged"
CellPadding="0">
<TodayDayStyle ForeColor="White" BackColor="#FFCC66"></TodayDayStyle>
<SelectorStyle BackColor="#FFCC66"></SelectorStyle>
<NextPrevStyle Font-Size="9pt" ForeColor="#FFFFCC"></NextPrevStyle>
<DayHeaderStyle Height="1px" BackColor="Silver"></DayHeaderStyle>
<SelectedDayStyle Font-Bold="True" BackColor="#CCCCFF"></SelectedDayStyle>
<TitleStyle Font-Size="9pt" Font-Bold="True" ForeColor="#FFFFCC" BackColor="Black">
</TitleStyle>
<OtherMonthDayStyle ForeColor="#CC9966"></OtherMonthDayStyle>
</asp:Calendar>



Daha sonra kod kısmımıza geçiyoruz ve;

protected void Calendar1_SelectionChanged(object sender, EventArgs e)
{
 Response.Redirect("Sorgu.aspx?Tarih=" + Convert.ToDateTime(Calendar1.SelectedDate).ToString("yyyy/MM/dd"));
}
Bu kodlarımız bu kadar şimdi diğer sayfalarıma geçelim.
Sorgu sayfamızı oluşturuyoruz.
<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate>
<table>
<tr style="height: 30px;">
<td>
<a><%#Eval("AdSoyad") %></a>
</td>
</tr>
</table>
</ItemTemplate>
</asp:Repeater> 



Bu sayfamızın cs tarafı ise;

SqlConnection bag = new SqlConnection(ConfigurationManager.ConnectionStrings["marken"].ConnectionString);
protected void Page_Load(object sender, EventArgs e)
{
 SqlCommand cmdE = new SqlCommand("Select * from Musteriler where MontajGunu='" + Convert.ToDateTime(Request.QueryString["Tarih"]).ToString("yyyy/MM/dd") + "'", bag);
SqlDataAdapter da = new SqlDataAdapter(cmdE);
DataTable dt = new DataTable();
da.Fill(dt);
Repeater1.DataSource = dt;
Repeater1.DataBind();
} 


Kodlarımız bu kadararkadaşlar umarım faydalı olur.

*Calender kullanırken veritabanımızda var olan etkinlikleri takvim üzerinde işaretli şekilde göstermek istersek de;

SqlCommand cmd = new SqlCommand("Select * from Musteriler", baglan.baglanti);
if (ConnectionState.Closed == baglan.baglanti.State)
baglan.baglanti.Open();
SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
Calendar1.SelectedDates.Add(Convert.ToDateTime(dr["MontajGunu"]));
}
dr.Close();
baglan.baglanti.Close(); 

 

şekilinde okutarak eklebiliyoruz. Bu olay load olayında yazılmalıdır.


Görüşmek üzere

Osman KURT

Yazılım Geliştirici ve Grafiker