none
IHttpHandler Resim Üzerine Yazı Ekleme RRS feed

  • Genel Tartışma

  • Merhabalar, Sitede görüntülenen resimlerin üzerine Yazı Yazan bir sınıfım var ama bu sınıfın Yazı yazan metodunu bir türlü tetikletemiyorum

    Sınıfım ve Metod

     public class ResimIsle : IHttpHandler
        {
            public bool IsReusable
            {
                get { return true; }
            }
    
            public void ProcessRequest(HttpContext context)
            {
                context.Response.ContentType = "image/jpeg";
                string fileName = context.Server.MapPath(context.Request.RawUrl);
                string siteName = "www.siteadi.com";
                Bitmap bmp = new Bitmap(fileName);
                Graphics g = Graphics.FromImage(bmp);
                g.DrawString(siteName, new Font("Arial", 25), Brushes.AliceBlue, new PointF(1, 1));
                bmp.Save(context.Response.OutputStream, bmp.RawFormat);
            }


    Web.Config 

      <httpHandlers>
          <add verb="*" path="*.jpg" type="MedseyUltimate.MedseyUltimateCodes.WebTools.ResimveDosyaIslemleri.ResimIslemleri.ResimIsle,MedseyUltimate.MedseyUltimateCodes.WebTools.ResimveDosyaIslemleri.ResimIslemleri" />
        </httpHandlers>

    Acaba web.Config dosyasında verdiğim yol damı bir sorun var anlayamadım.

    Buda Solution Ağacı


    bunyaminabay.com

    29 Mart 2013 Cuma 22:09

Tüm Yanıtlar

  • Öncelikle web config de handler eklerken tüm verb ler için işlem yapmana gerek yok.. Çünkü sadece GET için bu işlemleri yapmalısın. Bir de ResimIsle.cs dosyasındaki namespace in nedir görebilir miyiz? 

    Burak SARICA

    30 Mart 2013 Cumartesi 10:05
  • Burak SARICA Merhaba,

    namespace MedseyUltimate.MedseyUltimateCodes.WebTools.ResimveDosyaIslemleri.ResimIslemleri
    {
        public class ResimIsle : IHttpHandler
        {
            public bool IsReusable
            {
                get { return true; }
            }
    
            public void ProcessRequest(HttpContext context)
            {
                context.Response.ContentType = "image/jpeg";
                string fileName = context.Server.MapPath(context.Request.RawUrl);
                string siteName = "www.siteadi.com";
                Bitmap bmp = new Bitmap(fileName);
                Graphics g = Graphics.FromImage(bmp);
                g.DrawString(siteName, new Font("Arial", 25), Brushes.AliceBlue, new PointF(1, 1));
                bmp.Save(context.Response.OutputStream, bmp.RawFormat);
            }
        }
    }


    bunyaminabay.com


    • Düzenleyen Bünyamin 30 Mart 2013 Cumartesi 15:48
    30 Mart 2013 Cumartesi 15:48
  • IIS ayarlarını yaptın mı ?

    Yapmadıysan şu adrese bir bak

    http://www.buraksenyurt.com/post/HTTPHandler-ve-HttpModule-Kavramlarc4b1-bsenyurt-com-dan.aspx

    hep ayarları öğrenir hemde kullandığın teknolojiyi daha iyi anlarsın.

    31 Mart 2013 Pazar 00:52
  • Süleyman_güzel merhaba, baktığım örneklerde hiç bu ayarlar yoktu. kaldı ki vs 2010 ve asp.net 4.0 da sorunsuz çalışıyor ama 2012 ve asp.net 4.5 te hiç tetiklenmiyor muhtemelen web.config dosyasında verdiğim yol da bir problem olabilir ama ondanda emin değilim. 


    bunyaminabay.com

    31 Mart 2013 Pazar 13:10