La propiedad 'ID' es parte de la información clave del objeto y no se puede modificar en asp.net mvc

He utilizado el marco de la entidad con el primer enfoque de código.

cuando intento pasar el registro uno por uno Fromdate a Todate, la primera vez que funciona, después de que aparece un error como: "La propiedad 'ID' es parte de la información clave del objeto y no se puede modificar".

        var fd = todaycooked.CookDate; // 2016-07-01
        var td = todaycooked.ToCookDate; //2016-11-01

       for (var date = fd; date <= td; date = date.AddDays(1))
        {
            var product = db.Products.Find(todaycooked.ProductID);
            product.Qty = product.Qty + todaycooked.QTY;
            todaycooked.Product = product;
            todaycooked.CookDate = date;
            db.TodayCookeds.Add(todaycooked);
            db.SaveChanges();
        }

Gracias por adelantado.

Respuestas a la pregunta(1)

Su respuesta a la pregunta