01. maj 2007 - 18:49Der er
11 kommentarer og 2 løsninger
Komplet side fra DLL
Hej,
Jeg er ikke igang med et specifikt projekt, men er ved at kigge lidt på nogle hvor man kan bruger ASP.NET 2.0 på en lidt anderledes måde.
Der er garanteret flere måder at gøre det på, men jeg kunne godt tænke mig at kunne have en hel side (ikke kun codebehind) i en dll, og tilgå den udefra?
Håber i forstår mit spørgsmål, ellers må i endelig spørge :)
Jeg vil have 'alt' i en dll. Altså både codebehind og aspx. Jeg er klar over at jeg nok ikke kan designe sider efter den klassiskle metode, men det må jo kunne lade sig gøre?
Jeg ved godt at jeg naturligvis ikke kan have en almindelig .aspx reference til siden, men jeg er nødt til at rode lidt med min web.config får at får det til at lade sig gøre.
Så vidt jeg ved fungerer ASP.NET trace tool lidt på samme måde som jeg havde tænkt mig, altså den har heller ikke en fysik fil, men bliver genereret udelukkende af managed code.
Men hensyn til pre-rendering kender jeg det godt, men det er bare ikke helt det jeg er ude efter.
Jeg mener du kan gøre det med usercontrols. Men jeg har aldrig set noget med aspx filer. Måske kigger snepnet eller arne v forbi. Det kan være at de kan hjælpe lidt.
Det er sådan set relativt ukompliceret... Du laver en implementering af IHttpHandler, og konfigurerer den op i din konfigurationsfil:
// en handler using System; using System.Web;
namespace SomeNamespace { public class SomeHandler : IHttpHandler { public void ProcessRequest (HttpContext context) { context.Response.ContentType = "text/plain"; context.Response.Write("Something"); }
public bool IsReusable { get { return false; } } } }
// og en bid af en konfigurationsfil <httpHandlers> <add verb="*" path="*.thdl" type="SomeNamespace.SomeHandler"/> </httpHandlers>
Så vil du få SomeNamespace.SomeHandler hver gang du kalder med en thdl extension.
Det er også sådan traceren er lavet, og du vil kunne finde en linie som denne: <add path="trace.axd" verb="*" type="System.Web.Handlers.TraceHandler" validate="True" />
Mange tak for svaret. Jeg har prøvet at kigge på det, men jeg bliver ved med at få fejlen:
Configuration Error Description: An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately.
Parser Error Message: Could not load type 'TestHandler'.
Source Error:
Line 46: <httpHandlers> Line 47: <add verb="*" path="*.thdl" type="TestHandler" /> Line 48: </httpHandlers>
Beklager, min fejl. Kom til at lave en almindelig hander, istedet for bare klassen. Det virker helt perfekt nu. Smid begge et svar, synes dr_chaos skal have lidt for indsatsen.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.