title: Reusing session across controllers in C# MVC3
body: <p>I'm creating a website in C# using MVC3. The website is a client that uses a web service. The web service uses a unique session id per user, which is given as the last parameter in each service call. You get the session id when you log in.</p>
  
  <p>I'm able to get the session id and save it in a property in my user controller:</p>
  
  <pre><code>private string Sid
  {
      get
      {
          var sid = Session["Sid"];
          return sid == null ? "" : sid.ToString();
      }
      set
      {
          Session["Sid"] = value;
      }
  }
  </code></pre>
  
  <p>In my other controllers I'm able to get the session id with a similar property (just without the setter), but when it asks the user controller to do something where it accesses its own property to get the id the session is null.</p>
  
  <p>It seems like the sessions don't get transferred between the controllers, but I don't know how to do that. I would like to access the session from one central place, instead of having properties in each controller, but I can't figure out how to do it.</p>
  
  <p>After three days of searching Google hasn't been able to give me the answer. Do you have any ideas?</p>