7 Stimmen

Wie integriert man axd (Elmah) als Komponente in eine ASP.NET MVC-Site?

Ich habe Elmah in meiner ASP.NET MVC-Site installiert und möchte seine Schnittstelle in die Verwaltungsseiten der Site integrieren. Standardmäßig wird die Schnittstelle mit der Url ~/elmah.axd aufgerufen, die außerhalb des MVC-Systems läuft. Bei der Installation müssen Sie MVC mitteilen, dass die Route ignoriert werden soll, so dass es keinen Controller oder etwas anderes gibt, das von elmah weiß. Die Installation schlägt ein spezifisches Ignorieren vor, obwohl es bereits standardmäßig ignoriert wird:

public class MvcApplication : System.Web.HttpApplication {
    public static void RegisterRoutes(RouteCollection routes) {
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
        routes.IgnoreRoute("elmah.axd");
...
}

Ich möchte versuchen, elmah.axd als eine Komponente der Website zu integrieren. Ich denke, einen Elmah-Controller mit einer Ansicht zu haben, die die Futures-Hilfe Html.RenderRoute verwendet, aber ich bin nicht sicher, welche Argumente zu übergeben:

<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
    <h2>Elmah</h2>
    <% Html.RenderRoute(???); %>
</asp:Content>

Macht das Sinn - gibt es eine Möglichkeit, die URL an Html.RenderRoute zu übergeben? Gibt es eine bessere Möglichkeit, die nicht Html.RenderRoute verwendet?

7voto

eu-ge-ne Punkte 27673

Versuchen Sie stattdessen dies in Ihrer Ansicht:

<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
    <h2>Elmah</h2>
    <iframe src="<%= Url.Content("~/elmah.axd") %>" frameborder=no width=100% scrolling=auto>
    </iframe>
</asp:Content>

1 Stimmen

Vielen Dank dafür - iframe funktioniert hervorragend. Ich habe so gefangen in Controllern n Zeug, dass ich über gerade HTML vergessen.

1voto

Vijayant Katyal Punkte 642

Oder Sie können dies auf Ihrer Website verwenden

Elmah Error Log Anwendung

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X