如何访问在global.asax.cs中创建的属性



我正在从我的Global.asax.csApplication_Start中的web.config中读取两个值。web.config中的字符串值被分配给它们的公共属性,这些属性也在Global.asax.cs.中定义

如何从另一个类、方法和命名空间访问global.asax.cs文件中的属性?

更新#1这比我想象的要复杂(或者我只是让它变得复杂)。我想在普通的ol类库中引用这些属性的类,但我无法访问httpcontext(或者我不知道如何访问它)。

将当前应用程序实例转换为您的Global类型并访问其中的属性。

var app = (Your.App.Namespace.Global)HttpContext.Current.ApplicationInstance;
var x = app.YourProperty;

如果Global.asax.cs不操作这些值,那么只需像在Global.asax.cs.中那样从web.config中读取这些值

但是,如果Global.asax.cs确实操作了这些值,那么您可以将这些值写入"Application"对象。

    void Application_Start(object sender, EventArgs e)
    {
        // Code that runs on application startup
        Application.Add("Foo", "Bar");
    }

最后,您可以将要从全局公开的属性标记为静态。

    public static string Abc { get; set; }
    void Application_Start(object sender, EventArgs e)
    {
        // Code that runs on application startup
        Abc = "123";
    }

最新更新