如何在C#ASP.NET中调用Global.asax值

时间:2012-09-29 05:18:27

标签: c# asp.net vb.net

这是我对global.asax的VB代码

<%@ Application Language="VB">
<script runat="server">

Sub Application_Start(ByVal sender As Object, ByVal e As EventArgs)
    ' Code that runs on application startup
    Application("CS") = "server=myServer; user id=myUser; password=MyPaas; database=myData; pooling=true"
End Sub

Sub Application_End(ByVal sender As Object, ByVal e As EventArgs)
    ' Code that runs on application shutdown
    Application("CS") = ""

End Sub

Sub Application_Error(ByVal sender As Object, ByVal e As EventArgs)
    ' Code that runs when an unhandled error occurs
End Sub

Sub Session_Start(ByVal sender As Object, ByVal e As EventArgs)
    ' Code that runs when a new session is started
End Sub

Sub Session_End(ByVal sender As Object, ByVal e As EventArgs)
    ' Code that runs when a session ends.
    ' Note: The Session_End event is raised only when the sessionstate mode
    ' is set to InProc in the Web.config file. If session mode is set to StateServer
    ' or SQLServer, the event is not raised.
End Sub

</script>

我在VB中调用此值如下:     Dim objConn As New SqlConnection(Application("CS"))

如何在C#ASP.NET中执行此调用?

1 个答案:

答案 0 :(得分:0)

等效的C#代码是:

SqlConnection objConn = new SqlConnection(Application["CS"]);

注意“CS”周围的[]而不是()。

或者,您可以在使用块中执行此操作:

using (SqlConnection objConn = new SqlConnection(Application["CS"]))
{

    // Do your data access here
}

using块确保调用dispose(即使遇到异常)。有关using语句的更多信息,请参阅using Statement (C# Reference)

虽然我想知道 - 你为什么要在C#中使用用VB.NET编写的Global.asax文件?