Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Anropa Sub i Page från UserControl

Postades av 2003-06-16 22:16:10 - Christer Engholm, i forum asp.net generellt, Tråden har 4 Kommentarer och lästs av 707 personer

Jag använder mig av en huvudsida som dynamiskt inkluderar användarkotroller. Jag har gjort en Sub i huvudsidan (CodeBehind) för felhantering som ser ut såhär:

<code>
?????????????????? Sub Page_OnError(ByVal Exc As Exception)

'--> Vilken sida som orsakade felet
Dim strErrorPage As String = Request.ServerVariables("SCRIPT_NAME").ToString
'--> Själva felmeddelandet
Dim strErrorMessage As String = Exc.Message.ToString
'--> Vilken funktion som orsakade felet
Dim strTargetSite As String = Exc.TargetSite.ToString
'--> Mer detaljer angående felet
Dim strStackTrace As String = Exc.StackTrace.ToString

'--> Skickar användaren till felhanterar-sidan
Response.Redirect("SB_MainPage.aspx?UC=SB_Admin/SB_Shared/SB_ErrorPage.ascx&ErrorPage=" & strErrorPage & "&ErrorMessage=" & _
strErrorMessage & "&TargetSite=" & strTargetSite & "&StackTrace=" & strStackTrace)

End Sub
</code>

Jag vill veta hur jag ifrån min användarkontroll kan anropa denna sub när fel uppstår, typ:
<code>

'--> Fångar upp felmeddelande
Catch Exc As Exception

'--> Ett allmänt fel har inträffat
' detta tas hand om felhanteraren
?????????????????? Page_OnError(Exc)

End Try

</code>


Svara

Sv: Anropa Sub i Page från UserControl

Postades av 2003-06-16 22:50:00 - Johan Normén

Varför inte skapa en class som tar hand om dina fel? Så slipper du använda en användar kontroll till det.

Typ.
<code>
catch(Exception exception)
ExceptionManager.Publish(exception);
</code>

Annars kan du komma åt din metod från kontrollen du inkluderat på sidan.
Så som du gör med dina andra kontroller under codebehind.

Annars har du ju global.asax som kan hantera dina fel om du vill.

//Johan N


Svara

Sv: Anropa Sub i Page från UserControl

Postades av 2003-06-17 13:06:30 - Fredrik Normén

Olika tips på hur du kan använda din error hantering effektivare.
I ditt fall så verkar du vilja ha en metod som hanterar felet på varje sida. Gör då följande, lägga till Page_Error den triggars automatiskt om något går fel på din sida.

<code>
Private Sub Page_Error(ByVal sender As Object, _
ByVal e As System.EventArgs) Handles MyBase.Error

Dim ex As Exception = Server.GetLastError()
Session("Error") = ex.Message()
Server.ClearError()

Response.Redirect("myErrorPage.aspx")
End Sub
</code>

Den sidan som applikationen redirektar till skriver du tex något likt detta:

<code>
Private Sub Page_Load(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles MyBase.Load

If Session("Error") <> Nothing Then
lblError.Text = "<p>The following error occurred:</p>" & Session("Error") & "<br>"
Session("Error") = Nothing
End If
End Sub
</code>

Här kommer andra alternativ:

Du kan på din sida lägga till errorPage="errDefault.aspx" attributet i din Page deklaration <%@ Page %>

När ett fel uppstår på sidan så redirectar den automatiskt till den sidan du har angivit, för att sedan få tag i felet kan du tex göra följande i Page_Load på din error sida:

<code>
' errDefault.aspx
Private Sub Page_Load(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles MyBase.Load
lblError.Text = Server.GetLastError.Message
Server.ClearError()
End Sub
</code>

Ett annat alternativ om du vill att alla sidor i din applikation ska gå mot en och samma error sida är att sätta customError i din web.config

<code>
<customErrors mode="On" defaultRedirect="ErrDefault.aspx">
</code>

Eller anvädna dig av Application_Error i web.config som triggar på alla fel som uppstår i din applikation.

Det är bara att välja och braka..

/Fredrik N


Svara

Sv: Anropa Sub i Page från UserControl

Postades av 2003-06-18 02:43:41 - Pelle Johansson

Mycket bra svarat med flera alternativa lösningar, vi tackar för detta!


Svara

Sv: Anropa Sub i Page från UserControl

Postades av 2003-09-05 11:26:13 - Christer Engholm

Sorry, jag lade in ett svar på en annan tråd :-)


Svara

Nyligen

  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo
  • 14:25 Tips på verktyg för att skapa QR-k
  • 14:23 Tips på verktyg för att skapa QR-k
  • 20:52 Fungerer innskuddsbonuser egentlig

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 155
27 952
271 704
11 778
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies