SORU
21 Aralık 2010, Salı


Nasıl ASP.NET Durum Kodu 500 göndermek ve yine de yanıt yazmak için?

Cevaplar gibi hataları iade edebilmek için ihtiyacı olan tek dosya web ASP.NET bir servis (.ashx dosya IHttpHandler uygulaması içeren) var500 İç Sunucu Hatasıdurum kodları. Bu PHP yapmak için nispeten basit bir şeydir:

header("HTTP/1.1 500 Internal Server Error");
header("Content-Type: text/plain");
echo "Unable to connect to database on $dbHost";

Bu ASP.Net (C#) eşdeğer olmalıdır:

Context.Response.StatusCode = (int)HttpStatusCode.InternalServerError;
Context.Response.ContentType = "text/plain";
Context.Response.Write("Unable to connect to database on "   dbHost);

Tabii ki, bu işe yaramıyor beklendiği gibi; bunun yerine, IIS yakaladığını 500 durum kodu, çöpler ne yazdım için Response nesne gönderir ya da hata ayıklama bilgisi ya da özel bir hata sayfası nasıl bağlı app yapılandırılmış.

Benim soru - nasıl bu IIS davranışları bastırmak ve hata bilgisi IHttpHandler benim uygulaması doğrudan gönderebilir miyim?

Bu uygulama PHP bağlantı noktası, istemci tarafı zaten yazılı olduğu, aslında bu spec ile kaldım. 200 durum kodu ile gönderme hataları ne yazık ki kalıba uymuyor.

Bu olmadan dağıtmak istiyoruz SDK bir parçası olduğu için ideal olan, davranışları kontrol etmek istiyorum Program aracılığıyla,"bu dosyayı düzenlemekem " ve "bu IIS ayarını değiştirin" ek talimatlar.

Teşekkürler!

Edit: Sıralanmış. Context.Response.TrySkipIisCustomErrors = true bilet. Vay be.

CEVAP
22 Aralık 2010, ÇARŞAMBA


Context.Response.TrySkipIisCustomErrors = true

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Air_Fooj

    Air_Fooj

    24 NİSAN 2009
  • Jabari Johnson

    Jabari Johns

    18 Ocak 2008
  • khloe brooks

    khloe brooks

    25 Temmuz 2011