title: ASP.NET Thread Safety in aspx.cs code behind file
body: <p>I am thinking of adding a DataContext <strong>as a member variable</strong> to my aspx.cs code-behind class for executing LinqToSql queries. </p>
  
  <p>Is this thread safe? I am not sure if a new instance of this code-behind class is created for each HTTP request, or if the instance is shared amongst all request threads? </p>
  
  <p>My fear is that I will get 10 simultaneous concurrent http requests that will be using the same database session.</p>
  
  <pre>
  public partial class MyPage : System.Web.UI.Page
  {
      private DataContext myDB = new DataContext();
  
      protected void MyAction_Click(object sender, EventArgs e)
      {
          myDB.DoWork();
      }
  } 
  </pre>