title: New DB entry not being assigned Id ASP.Net Identity
body: <p>So I am building my project off the ASP.NET identity template that was made with my solution. I have the below models that make up my DB but when I try making a new Session it is not being assigned an Id.   </p>
  
  <pre><code>public class Client
  {
      public Client()
      {
          Session = new HashSet&lt;Session&gt;();
      }
      [Key, ForeignKey("ApplicationUser")]
      public string Id { get; set; }
      public virtual ICollection&lt;Session&gt; Session { get; set; }
      public virtual ApplicationUser ApplicationUser { get; set; }
  }
  public class Session
  {
      public string Id { get; set; }
      public virtual Client Client { get; set; }
      public virtual Measurements Meansurements { get; set; }
      public virtual MeasurementsExtended MeasurementsExtended { get; set; }
  }
  public class Measurements
  {
      [Key, ForeignKey("Session")]
      public string Id { get; set; }
      public virtual Session Session { get; set; }
  }
  public class MeasurementsExtended
  {
      [Key, ForeignKey("Session")]
      public string Id { get; set; }
      public virtual Session Session { get; set; }
  }
  </code></pre>
  
  <p><strong>UPDATED</strong> Controller</p>
  
  <pre><code>var session = new Session { Client = db.Client.Find(model.SelectedClient),};
  var measurements = new Measurements { Session = session};
  var measurementsExtended = new MeasurementsExtended { Session = session};
  ession.Meansurements = measurements;
  session.MeasurementsExtended = measurementsExtended;
  db.Session.Add(session);
  </code></pre>
  
  <p>Do I explicitly need to assign an Id? I have not done that for any other custom models and they are assigned an Id without a problem<br>
  I am still new to MVC to feel free to let me know if there's something else I might be doing wrong  </p>
  
  <p><strong>Update</strong>
  So after Discussion I have fixed the Database generating Id's but now Im getting the error <code>InnerException {"Cannot insert the value NULL into column 'Id', table 'project.dbo.Sessions'; column does not allow nulls. INSERT fails.\r\nThe statement has been terminated."}</code><br>
  Yet as im looking at the object in he debugger it deffinately has the Id of 0, I even tried manually setting it to 1 with no change.<br>
  <strong>Update 2 - Working</strong>
  Model</p>
  
  <pre><code>public class Session
  {
      [Key]
      [DatabaseGenerated(DatabaseGeneratedOption.None)]
      public Guid Id { get; set; }
      ...
  </code></pre>
  
  <p>Controller</p>
  
  <pre><code>var session = new Session { Id = Guid.NewGuid() ...
  </code></pre>