8 Ağustos 2009 Cumartesi

MSSQL Server Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding.

1.Çözüm olarak
bağlantı stringi olarak

kullanmak bağlantı zamanı aşımı hatasını giderebilir.
-----------------
1.Çözüm olarak
Dim myCommand As New SqlCommand(sql, myConnection, myTrans)
myCommand.CommandType = CommandType.StoredProcedure
myCommand.CommandTimeout = 0


buradaki 0 değeri bağlantı zaman aşım değerini Limitsiz olarak ulaşmanızı sağlar.

buda oldukca iyi bir yol.

5 Ağustos 2009 Çarşamba

C# Dosya uzantısını almak

Kullanışlı bir ip uçu daha yazalım;


OpenFileDialog diyalog = new OpenFileDialog();
diyalog.Filter = "Image files (*.bmp; *.gif; *.jpg; *.png)*.bmp; *.gif; *.jpg; *.png MS-Office Files (*.doc; *.xls; *.docx; *.xlsx)*.doc; *.xls; *.docx; *.xlsx Text (*.text; *.txt; *.rtf)*.text; *.txt; *.rtf HTML (*.html; *.htm; *.mht)*.html; *.htm; *.mht";
diyalog.DefaultExt = Directory.GetCurrentDirectory();
DialogResult result = diyalog.ShowDialog();
if (result == DialogResult.OK)
{
string strExtension = Path.GetExtension(diyalog.FileName.ToString());

}

Path.GetExtension ile yolu verilen bir dosyanın uzantısını bulmak mümkün

FileDialog Filter Örneği

File Dialog ile bir çok kereler çalışmışızdır acaba aşğıya doğru inen farklı farklı dosya tiplerini destekleyen FileDialoglar nasıl yapılabilir.


OpenFileDialog diyalog = new OpenFileDialog();
diyalog.Filter = "Image files (*.bmp; *.gif; *.jpg; *.png)*.bmp; *.gif; *.jpg; *.png MS-Office Files (*.doc; *.xls; *.docx; *.xlsx)*.doc; *.xls; *.docx; *.xlsx Text (*.text; *.txt; *.rtf)*.text; *.txt; *.rtf HTML (*.html; *.htm; *.mht)*.html; *.htm; *.mht";
diyalog.DefaultExt = Directory.GetCurrentDirectory();
DialogResult result = diyalog.ShowDialog();


kırmızı ile yazılı alana bakarsanız. burada file dialog için farklı farklı 4 farklı filtre girildiğini göreceksiniz.

yapısı ise basitce şöyle ;

Image Files(*.BMP;*.JPG;*.GIF)*.BMP;*.JPG;*.GIFAll files (*.*)*.*

3 Ağustos 2009 Pazartesi

C# bir dosyayı çalıştırmak

devexpress listboxcontrole için yazdım ve eklenen dosyanın adını alıyor çift tıklayınca olayın da bu kod çalışıyor . kırmızı ile yazdığım satır ise dosyayı çalıştırıyor.Eğer ilişkisiz bir dosya formatına çift tıklarsanız bunu yöntemek için Try Catch içine yazılması elzem.

try
{
if (lstEquipmentConfigutationList.SelectedItem != null)
{
System.Diagnostics.Process.Start(@"C:\\SMT\\CustomerEquipment\\" + l stEquipmentConfigutationList.SelectedItem.ToString());
}
}
catch (Exception exc)
{
XtraMessageBox.Show(exc.Message, "Running Error", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1);
return;
}

30 Temmuz 2009 Perşembe

dev express DateEdit 00:00:00 kaldırmak

Dev Express dateEdit Kullandığımda Mask olarak Short Date bile seçseniz hemen seçimden sonra tarihin yanına 00:00:00 gibi bir şey getiriyor.Nedir bu nedir diye düşünürken kaldırmak için yapılması için gerekli olan şeyi buldum.

Mask.UseMaskAsDisplayFormat özelliğini True Yapmakmış Offf Dev Express Offf :(

Float Regular Expression

Düşündüm Bir text kutusuna sadece float (kayan noktaşı) veri girişine izinvermek isteseydim.
Regular Expression ile nasıl ifade ederiz diye düşündüm şöyle olması gerekir.

[-+]?([0-9]*\.[0-9]+[0-9]+)

DateTime Null Alan Girmek

Sql de DateTime veri tipleriyle çalışmak Null yada String.Empty ("") atanamadığından biraz problem çıkartır.

diyelimki kullanıcı tarih girmemiş ve sizde doğal olarak tarih tipi girilmemişse tarih alanına bir şey yazdırma diyebilmelisiniz.

null atamayız "" atamayız ozaman
DBNull.Value atayabilirsiniz.
Peki .Net de DateTime Tipinede hiç bir şey girilmediğinde null yada "" taşımak yerine Datetime.MinValue atayarak boş gelmiş gibi düşünebilirsiniz.

yani şöyle bir şey yaptım ben


if (customerequipment.EquipmentInstallCATDate == DateTime.MinValue)
cmd.Parameters.Add("@dEquipmentInstallCATDate", SqlDbType.DateTime).Value = DBNull.Value;
else
cmd.Parameters.Add("@dEquipmentInstallCATDate", SqlDbType.DateTime).Value = customerequipment.EquipmentInstallCATDate;