Tema: Re: asp.net ir BasePage
Autorius: VyvIT
Data: 2009-12-07 10:28:30
Dekui už pagelbėjimus, tačiau pasidariau savaip:

global.asax kodą perkėliau į App_Code katalogo, naują klasę (pavadinau ją 
Global) ir paveldėjau iš System.Web.HttpApplication:

public class Global : System.Web.HttpApplication{
    public static void CustomMethod(..){..}
    ...
}

global.asax faile nurodžiau, kad kodas paveldimas iš tos naujos klasės 
Global:
<%@ Application Language="C#" Inherits="Global"%>

ir viskas!

BasePage'e nebereikia property Global, nes turiu klasę Global su statiniu 
metodu, t.y. ASP.global_asax patapo Global :)



"VyvIT" <labas@viso.iki> wrote in message 
news:hfbca9$ee8$1@trimpas.omnitel.net...
> Sveiki,
>
> iškilo ir man vienas klausimėlis:
> turiu asp.net web site'ą, kurio puslapiai  paveldėti iš BasePage'o, t.y:
>
> public class BasePage : System.Web.UI.Page
> {
> ...
> }
> //login.aspx codebehind'as
> public partial class Login : BasePage
> {
>    ASP.global_asax.CustomMethod("bla");  // <- cia yra intellisence'as
>    Global.CustomMethod("bla"); //<- noriu
> }
> global.asax'e turiu susikures statini metoda CustomMethod.
>
> Login codebehind'e matau  ASP.global_asax klasę ir metodą, jei BasePage be 
> error'ų (t.y. global_asax klasę background'e sukompiliuoja), o man reikia, 
> kad galėčiau ASP.global_asax matyti ir BasePage' tam, kad galėčiau 
> susikurti tos klasės property ir puslapiuose naudoti kaip 
> Global.CustomMethod:
>
> public class BasePage : System.Web.UI.Page
> {
> public ASP.global_asax Global {  get {    return 
> ((ASP.global_asax)Context.ApplicationInstance)    }}
> }
>
> Bet BasePage'e ASP.global_asax jau neberodo intellisence'o ir 
> nesikompiliuoja, nes rekia, kad nežinomas namespace'as ASP. Ir manau, kad 
> kažkur web.confige ar pan. nusirodo, kad prima sukompiliuotų global_asax, 
> o tik po to BasePage'ą ar kad nusirodytų buildinimo eiliškumas ar pan.
>
> Jei kas suprato ko noriu, tai lauksiu pagalbos :)
>
> -- 
> VyvIT
>