17 Ağustos 2007 Cuma

Remote Dektop da Ctrl+Alt+Del yapmak

Remote Desktop kullanirken explorer.exe beklenmedik bir sekilde kapanirsa ekraniniz microsoft un güzel mavisi ile kaplanir. Bu durumda Task Manager calistirip Run kismindan explorer.exe tekrar balslatmak gerekir. Task Manager i baslatmak icin Remote Desktop da ctrl + alt + del ne yazikki ise yaramiyor. Bunun icin gerekli olan kombinasyon:

Ctrl + Alt + End

Kücük bir ipucu :)

14 Ağustos 2007 Salı

Oracle DB de tekrarlanan kayitlari silme

Asagidaki örnekde TestTable da min rowid ye sahip olan kayit saklanacak geri kalan tekrarlanan kayitlar silinecek.

Delete from TestTable t1
where t1.rowid >
(Select min(t2.rowID) from TestTable t2
where t1.col1 = t2.col1
and t1.col2 = t2.col2)

Benzer bir cözüm sql server icin söyle olabilir:

Oracle daki "rowid" yerine tablomuzun birincil anahtarini (PK) kullanabiliriz.
PK: sysID

Delete from TestTable where sysID IN (
Select sysID from TestTable t1
where t1.sysID > (Select min(t2.sysID) from TestTable t2
where t1.col1 = t2.col1
and t1.col2 = t2.col2))

11 Ağustos 2007 Cumartesi

SharePoint Tips & Tricks

Microsoft Share Point Server ve Windows SharePoint Services ile ilgili önemli ipucu ve cözümlerin bulunabilecegi kapsamli bir blog. Sharepoint ile ugrasanlarin isine cok yarayacagini düsünüyorum. Bir göz atmak da fayda var.

http://www.sharepoint-tips.com/2007/01/how-to-add-print-list-option-to-list.html

10 Ağustos 2007 Cuma

Debugging Oracle PL/SQL from Visual Studio

PL/SQL kodlarini VS.NET icerisinde debug etmek ile ilgili güzel bir makale.


http://www.oracle.com/technology/obe/net11gobe/debugging/debugging.htm?msgid=5794223

Visual C# 2005 Keyboard Shortcuts

VS.Net icerisinde kullanilan kisa yollar. Büyütmek icin lütfen resmin üzerine tiklayin.

9 Ağustos 2007 Perşembe

Commandline dan PC yi tekrar baslatmak

MSDN den konu ile ilgili bir örnek:

----------------------------------------
To shut down \\MyServer in 60 seconds, force running applications to close, restart the computer after shutdown, indicate a user code, indicate that the shutdown is planned, log major reason code 125, and log minor reason code 1, type:

shutdown -r -f -m \\MyServer -t 60 -d up:125:1

----------------------------------------

8 Ağustos 2007 Çarşamba

Web.Config dosyasindaki Mail ayarlarini okumak.

Web.Config dosyasindaki <mailSettings> tagi altinda bulunan mail ayarlarini c# ile kod icerisinden okumak icin asagidaki örnegi kullanabilirsiniz.

using System.Configuration;
using System.Web.Configuration;
using System.Net.Configuration;

String path = Request.CurrentExecutionFilePath;
path = path.Substring(0, path.LastIndexOf('/'));

Configuration configurationFile = WebConfigurationManager.OpenWebConfiguration(path);
MailSettingsSectionGroup mailSettings = configurationFile.GetSectionGroup("system.net/mailSettings") as MailSettingsSectionGroup;

if (mailSettings != null)
{
iPort = mailSettings.Smtp.Network.Port;
strHost = mailSettings.Smtp.Network.Host;
strPassword = mailSettings.Smtp.Network.Password;
strUserName = mailSettings.Smtp.Network.UserName;
}
Burak Selim Senyurt'un LINQ ile ilgili cok güzel bir makalesi. Yine cok özen göstererek yazmis.

http://www.csharpnedir.com/makalegoster.asp?MId=729

6 Ağustos 2007 Pazartesi

Bir resultsetden split edilmis string olusturmak

Sql Server üzerinde yaratacagimiz bu UDF, özellikle Reporting konusunda kullanilabilecek bir function örnegidir.

Örnegimizde Northwind veritabani kullaniyoruz.
Bunun icin öncelikle veritabaninda "GetProductIDs" isimli bir UDF olusturuyoruz. Fonksiyonumuz parametere olarak OrderID alacak ve OrderDetails tablosunda bu OrderID ye ait olan kayitlardaki ProductID leri bize virgül ile ayrilmis sekilde varchar olarak döndürecek.

CREATE FUNCTION [dbo].[GetProductIDs]
(
@OrderID int
)
RETURNS nvarchar(MAX)
AS
BEGIN

DECLARE @productIDList nvarchar(MAX)

SELECT @productIDList = COALESCE(@productIDList + ', ', '') +
CAST(ProductID AS varchar(20))
from dbo.[Order Details] Where OrderID = @OrderID

return @productIDList
END;


Fonksiyonumuz database üzerinde yaratildiktan sonra, su sekilde fonksiyonumuzu test edebiliriz.

Select dbo.GetProductIDs(OrderID) as ProductIDs from dbo.Orders



FreeTextBox icin sayfada Validation kaldirmak.

Asp.Net sayfalarinda FreeTextBox daki bir degeri veritabanina kaydederken bir güvenlik hatasi olusabilir:

"A potentially dangerous Request.Form value was detected from the client"

Bunu Page tag'ine

ValidateRequest="false"

ekleyerek önleyebiliriz.