Arşiv

Posts Tagged ‘Response.Redirect’

ASP.NET İçerisinde Response.Redirect ile Dosya İndirme İşlemi

Merhaba arkadaşlar,

Bugünkü yazımızda işinize çok yarayacak bir konuya değinmek istiyorum. Şimdi bir senaryo düşünelim. Bir web siteniz var ve siz buradan günlük olarak kullanıcı listesini bir excel dosyası oluşturduktan sonra indirme işleminin başlaması gerekiyor. Burada ilk yapmanız gereken tabi dosyayı oluşturup bir link çıkarmanız.

Şimdi burada dosya oluşturmaktan bahsetmek yerine, oluşturduğumuz link için nasıl indirme işleminin başlayacağı kısma gelelim.

Örn : http://www.deneme.com/content/xls/userlist_20072012.xls diye bir linkiniz var. Siz doğal olarak userlist_20072012.xls bu kısmı oluşturup başına /content/xls/ ekleyerek linkinizi tamamlamış olacaksınız. Sonrasında yapmanız gereken ise çok basit. Aşağıdaki kod parçacığını kullanarak işleminizi tamamlayabilirsiniz.

private void RedirectTo(string url)
{
string redirectURL = Page.ResolveClientUrl(url)
string script = "window.location = '" + redirectURL + "';";
ScriptManager.RegisterStartupScript(this, typeof(Page), "RedirectTo", script, true);
}

Yukarıda bir fonksiyonlarak tanımlanmış durumda siz bu fonksiyona yukarıdaki örneğe bağlı olarak aşağıdaki urli gönderirseniz işlem başarı ile tamamlanmış olacaktır.

protected void BtnGetExcelClick(object sender, EventArgs e)
{
RedirectTo("/content/xls/userlist_20072012.xls");
}

Umarım işinize yarar. Bir sonraki yazıda görüşmek üzere…