ilker.Weblog()

2009-01-11

VS 2008 - Get Web Page HTML Content

Visual Studio 2008'de bir web sayfasının tüm HTML içeriğini alıp bir string değişkene atmak için WebResponse ve StreamReader nesnelerini kullanabiliriz. Nasıl yapıldığını basitçe bir metod ile gösterelim (Bu metod timeout kontrolü, çeşitli diller için encoding belirtme gibi adımlar ile ilerletilebilir.)

private void getContent(string URL)

{

string result = "";

string url = URL;

WebResponse response = null;

StreamReader reader = null;

try

{

HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);

request.Method = "GET";

response = request.GetResponse();

reader = new StreamReader(response.GetResponseStream(), Encoding.Default);

result = reader.ReadToEnd();

}

catch (Exception ex) { // hata yakalama kodunuzu yazın. }

finally // try – catch farketmeksizin reader ve response kapatılmalı

{

if (reader != null)

reader.Close();

if (response != null)

response.Close();

}

// result değişkeni HTML içermektedir. Gerekli yerde kullanabilirsiniz.

}

Etiketler:

2008-12-29

Ünibel A.Ş.

Çalıştığım 2 firma da kriz dolayısı ile projeleri devam ettiremeyip, yazılım ofislerini kapattı. Her ikisine de uzun vadeli planlar ile girmiştim ama sonuç düşündüğüm gibi olmadı. Bu kriz bizi teğet geçiyorsa, ben geometriden anlamıyorum !


18 Aralık 2008 itibarı ile İzmir Büyükşehir Belediyesi için teknoloji çözümleri üreten Ünibel A.Ş.’de çalışmaya başladım.


Şimdilik gördüğüm kadarı ile Ünibel’de çalışmak sadece teknolojik yönden değil, insanları ve bürokrasinin işleyişini anlamak yönünden de faydalı olacak. Görev alacağım Web tabanlı projelerde bugüne kadar kullandığım ASP.NET, C#, Sql Server gibi teknoloji / dillerin yanında şimdiye kadar haklarında üstünkörü bilgiye sahip olduğum Flash, Javascript konularında da deneyim kazanacağımı tahmin ediyorum. En büyük artısı ile Oracle 10g tanışacak ve yoğun olarak kullanacak olmam.


Bu arada İZSU binasının en üst katında göreni hayran bırakacak manzarayı da es geçmemek lazım.


Önümüzdeki günler neler getirecek bilinmez ama en azından askere kadar burada çalışmayı umuyorum.

Etiketler:

2008-12-28

Sql Server Auto - Incremental ID

SQL tablolarında sıklıkla auto - increment (otomatik artan) id'ler kullanırız.
Böyle bir tabloda kayıt silme işlemi sonucu, ardışık olması gereken id'lerin aralarında boşluklar olabilir. (Örneğin id'ler 1,2,3,6,7,9,10.. sırasında olabilir)


Sql Server'da, arada atlanan id'lere değer atamak için;

DBCC CHECKIDENT ('Tablo_Adı', RESEED, Sayı)

şeklinde bir sql cümlesi yeterli olacaktır. Basitçe sayı yerine 0 (sıfır) yazarsanız, kayıtlar 0'dan başlayıp ilk boş id numarasını bulunca eklenecektir.

Etiketler:

2008-12-23

Blog Başlıkları

Web üzerinden erişilen bilgiler genel olarak İngilizce yazılmıştır. Kullandığımız yazılım araçları ve aldığımız hata mesajları da öyle. Bu yüzden blog başlıklarını, Google’da hangi anahtar kelimelerle arama yapıyorsam, onlara benzer kelimeler kullanılarak oluşturacağım.

Türkçe’ye sahip çıkmamız gerektiğine inanıyorum. Blog bu konuda biraz özensiz kalabilir. İleride bunu da çözülmesi gereken bir konu olarak buraya not düşüyorum.

C# Windows Application - change font size - code behind

Windows uygulamasında label.Font.Size özelliği read-only'dir ve atama yapılamaz.

Kod içinden font boyutunu değiştirmek için şu metodu kullanabiliriz:

public Font changeFontSize( Font font, float fontSize )
{
if (font != null)
{
float currentSize = font.Size;
if (currentSize != fontSize)
{
font = new Font(font.Name, fontSize,
font.Style, font.Unit,
font.GdiCharSet, font.GdiVerticalFont);
}
}
return font;
}

Etiketler:

“If you have references in markup, they will not be renamed”

ASP.NET sitesindeki herhangi bir bileşenin adını değiştirmeye kalkınca böyle bir uyarı alıyorsanız, cache'i temizlemeniz sorunu çözecektir.

Tüm cache'i temizlemek yerine sadece web site instance'larını kaldırmak için:

1- VS .Net'i kapatın.

2- cmd ile command penceresini açın ve şu komutu yazın:
rd /s /q "%userprofile%\Local Settings\Application Data\Microsoft\WebsiteCache"

3- Web sitesini tekrar açtığınızda cache yeniden oluşturulacak, böylece artık bu hatayı almayacaksınız.

Etiketler:

Sql Server DB Diagram Error

HATA MESAJI: "Database diagram support objects cannot be installed because this database does not have a valid owner. To continue, first use the Files page of the Database Properties dialog box or the ALTER AUTHORIZATION statement to set the database owner to a valid login, then add the database diagram support objects."


SQL Server 2005 instance'ına başka bir instance'dan veritabanı attach ettiğinizde bu hatayı alırsanız, çözmek için SQL Server'da şu sorguyu çalıştırmak yeterli olacaktır:


EXEC sp_dbcmptlevel 'Veritabanı_adı', '90';
go
ALTER AUTHORIZATION ON DATABASE::Veritabanı_adı TO "LoginKullanıcıAdı"
go
use [Veritabanı_adı]
go
EXECUTE AS USER = N'dbo' REVERT
go

Etiketler:

Hello World

Merhaba,


Tim Berner’s Lee’nin yoğun ısrarları üzerine ben de bir blog sahibi oldum, artık omzumda büyük sorumluluk taşıyorum. ;)


Bu blog, e-sosyal bir mühendisin karaladıklarını içerecek. Etraftaki çoğu gereksiz, azı gerekli blog kalabalığının içinden sıyrılmak gibi bir hedef ve çaba, en azından şimdilik, yok.


Yazılım alanında çalışırken sık sık yaşamışsınızdır. Bazen çok küçük bir işlem, birkaç satır kod için Google’a koşar, işe yarayan sayfayı ‘Sık Kullanılanlar’a atarız. ‘Sık Kullanılanlar’ da zamanla tüm interneti kapsar.


Ben de teknik konularda ihtiyaç duyabileceğim / duyulabileceğiniz ufak tefek tüyoları buraya not alacağım. Zamanla içerik dallanıp budaklanır diye umuyorum.


Ve işte karşınızda 21. yüzyılın en gerekli blogu !!