Bugün DVD‘de izleme fırsatı bulduğum Vavien filmi için seyirlik bir film denilebilir. Film ailesi ile birlikte olmaktan memnun olmayan Celal (Engin Günaydın)‘in hikayesini anlatmaktadır. Filmde abisiyle birlikte bir elektrik dükkanı işleten Celal, maddi açıdan iyi durumda değildir. Karısının Almanya‘da yaşayan babası Sevilay (Binnur Kaya)‘ya her ay düzenli para göndermektedir. Bu paraların yerini bulan Celal, karısını öldürerek rahata kavuşmak ister. Abisiyle birlikte sık sık gittiği pavyonda Sibel adında bir şarkıcıya aşık olan Celal‘i o konuda da sorunlar beklemektedir.
Binnur Kaya‘nın oyunculuğuna gerçekten çok şaşırdığımı itiraf etmek isterim. Avrupa Yakası ve diğer dizilerde oynadığı roller gereği, gördüğümde pekte hoşlanmadığım bir insan olmasına rağmen, filmdeki oyunculuğu gerçekten inanılmaz. Üzüldüğünü ve sevindiğini farklı şekillerde belirten, bir ev kadınını canlandıran Sevilay, filmi izlerken zaman zaman üzdüğü gibi zaman zaman da bizi ürkütmeyi başarmıştır.
Engin Günaydın da yine filmdeki oyunculuğu ile göz dolduruyor. Filmde bazen Burhan gözümüzde canlansada; şaşkın, tutarsız ve mutsuz insan karakterini iyi yansıtmış…
Filmde bizi zaman zaman güldüren ise, çok hızlı konuşan Sevilay‘ın babası, gerçekten filmin içersine insanları biran olsun tebessüm ettirmeyi başarıyor.
Filmin konusuna gelince, ortada bir konu olduğunu düşünmüyorum. Sadece güzel bir oyunculuk seyrediyorsunuz. Taylan kardeşlerin yönettiği filmin çekimleri de iyi olduğu için senaryo kötü bile olsa kendisini izlettirmeyi başarıyor. 2 saatlik zamanınızı oyunculuk izlemek için harcamak isterseniz, düşünmeden izlemeniz gereken bir film diyebilirim.
Herkese iyi seyirler…
Bilgisayarda biz farkında olmadan arka planda sessiz sedasız çalışmalarını yürüten, hizmetlerden bahsedeceğiz. Bilgisayarım\Yönet\Hizmetler gelerek bahsettiğim hizmetleri görebilirsiniz. Projemde bana lazım olan 2 saatte bir kontrol yapan, bir Windows servis yazacağız.
Yazacağımız Windows servis, bir Timer aracılığı ile Mssql veritabanımızı kontrol edip, istediğimiz koşul gerçekleştiğinde, mail gönderecektir. Sanırım burada açıklamaktansa kodları yazmak daha anlaşılır olacaktır.
Bu arada mail gönderme kısımlarını değiştirdim, oraları kendi server bilginize göre düzenlersiniz. Aşağıdaki kodları Setup olarak kurup, istediğiniz server‘da çalıştırabilirsiniz.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Linq;
using System.ServiceProcess;
using System.Text;
using System.Timers;
using System.Data.SqlClient;
using System.Net.Mail;
using System.Net; Devamını Oku
Bugün şirket için yazılan DLL‘e eklenmek üzere, bir fonksiyon yazdım. Bu fonksiyonu kendi projelerimde de DAL içersinde fonksiyon olarak kullanıyorum. Tamamen kodun dinamikleşmesine dönük, fonksiyona gönderilen 2 tane string dizi ve bir tane normal string olmak üzere 3 parametre almaktadır. Bu parametlerden ilk string dizi, istenilen sayıda alan adının alınmasını sağlarken, diğer dizi istenilen sayıda tablodan çekilmesini sağlamaktadır. Son kısımda girilen şart string‘i ise “where” olarak girebileceğiniz, koşulu belirtmektedir. Son şart stringine boş değer göndererek sadece select ifadesinin çalışmasını sağlayabilirsiniz. Bu fonksiyonda bir kaç ufak değişiklik yaparak, INSERT, UPDATE işlemlerini de daha dinamik bir hale getirip, burada paylaşacağım.
public static SqlConnection conn = new SqlConnection(@”data source=GIFTED\SQLEXPRESS;integrated security=sspi;initial catalog=Ticket”);
public static DataTable Baglan(string[] alanAdlari, string[] tabloAdlari, string Sart)
{
string alanToplam = “”;
string tabloToplam = “”;
int say = 0;
//Gelen alan adlarının içeriğini bu kısımda birleştiriyoruz
foreach (var item in alanAdlari)
{
alanToplam = alanToplam + “[" + alanAdlari[say] + “]” + “,”;
say++;
}
alanToplam = alanToplam.Remove(alanToplam.Length-1,1);
say=0;
//Gelen tablo adlarının içeriğini bu kısımda birleştiriyoruz
foreach (var item in tabloAdlari)
{
tabloToplam = tabloToplam + tabloAdlari[say] + “,”;
say++;
}
tabloToplam = tabloToplam.Remove(tabloToplam.Length – 1, 1);
say = 0;
SqlCommand comm = new SqlCommand(“SELECT ” + alanToplam + ” FROM ” + tabloToplam + ” WHERE ” + Sart +”", conn);
Bugün bir saatimi sırf, gridview üzerindeki verinin anında kaybolmasına harcadım diyebilirim. İnternet’i araştırdığınızda genel olarak, yeniden yükleme ve gridview.bind() çözümü ile karşılaşırsınız. Ancak iki yönteminde istediğini karşılayamaz. Aşağıya ekleyeceğim kod satılarında, sorunu nasıl aştığım açıkça belli oluyor. Fakat kısaca anlatmak gerekirse, genel olarak herkes gridview satırlarından aldığı veriyi rahatça veritabanından silebiliyordu, fakat gerekli olan gridview güncellemesi yapılamıyordu, databind() yaptığımızda zaten ekran gidiyordu. Sorunu aşmak için öncellikle veritabanından sildim, ardından ilgili satırı visible özelliğiyle yok ederek sorunu aştım. Sizinde aynı çözümle sorunu aşacağınıza inanıyorum. Herkese kolay gelsin…
protected void grdRapor_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
//Atilla for you ![]()
string id = grdRapor.Rows[e.RowIndex].Cells[1].Text.ToString();
string plaka = grdRapor.Rows[e.RowIndex].Cells[3].Text.ToString();
string baslangicTarih = grdRapor.Rows[e.RowIndex].Cells[7].Text.ToString();
string conString = “Data Source=GIFTED\\SQLEXPRESS;Initial Catalog=Arac_Takip;Integrated Security=True”;
SqlConnection connection = new SqlConnection(conString);
connection.Open();
Aşağıdaki kodları bir butona yerleştirdiğimizde, oradaki “Gridviewiniz” kısmını kendi Gridview ayarlayarak, verilerinizi olduğu gibi Excel‘e aktarabilirsiniz. Rapor.xls olarak masaüstüne kaydedecektir.
HtmlForm form1 = new HtmlForm();
form1.Controls.Add(Gridviewiniz);
Response.Clear();
Response.ClearHeaders();
Response.ClearContent();
Response.ContentEncoding = System.Text.Encoding.GetEncoding(“windows-1254″);
Response.Charset = “windows-1254″; //ISO-8859-13 ISO-8859-9 windows-1254
System.Web.HttpContext.Current.Response.AddHeader(“content-disposition”, “attachment;filename=Rapor.xls”);
Response.ContentType = “application/vnd.ms-excel”;
System.IO.StringWriter stringWrite = new System.IO.StringWriter();
System.Web.UI.HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite);
Gridviewiniz.RenderControl(htmlWrite); Devamını Oku