title: Knockout.js select data-bind value is not read but is written
body: <p>Here is my HTML code:</p>
  
  <pre><code>&lt;!-- ko foreach: warehouseOrders().StoreOrders --&gt;
                      &lt;tr&gt;
                          &lt;td&gt;
                              &lt;b data-bind="text: Product"&gt;&lt;/b&gt;
                          &lt;/td&gt;
                          &lt;td&gt;
                              &lt;b data-bind="text: Store"&gt;&lt;/b&gt;`enter code here`
                          &lt;/td&gt;
                          &lt;td&gt;
                              &lt;b data-bind="text: Quantity"&gt;&lt;/b&gt;
                          &lt;/td&gt;
                          &lt;td&gt;
                              &lt;select data-bind=" value: OrderStatusId , options: $parent.orderStatuses(), optionsText: 'Status', optionsValue: 'Id'"&gt;&lt;/select&gt;
                              &lt;b data-bind="text: OrderStatusId"&gt;&lt;/b&gt;
                          &lt;/td&gt;
                      &lt;/tr&gt;
                      &lt;!--/ko--&gt;
  </code></pre>
  
  <p>So StoreOrders contains all properties : Product, Store,Quantity,OrderStatusId.</p>
  
  <p>The specific problem: select options: <code>$parent.orderStatuses()</code> contains a list of orderstatuses(Id,Status). I set text and value properties for the select. All works fine, when selecting an option it is written into OrderStatusId property of the object, but initially, OrderStatusId contains a value, which knockout should read and set in the select. So when i open up select should be on that value.</p>
  
  <p>Here are the models:</p>
  
  <p>Main class:</p>
  
  <pre><code>public class WarehouseDTO
      {
          public System.Guid Id { get; set; }
          public string Name { get; set; }
          public string Address { get; set; }
          public List&lt;StoreOrderDTO&gt; StoreOrders { get; set; }
          public List&lt;StoreWarehouseDTO&gt; StoreWarehouses { get; set; }
          public List&lt;WarehouseProductDTO&gt; WarehouseProducts { get; set; }
      }
  </code></pre>
  
  <p>and the StoreOrderDTO</p>
  
  <pre><code>public class StoreOrderDTO
      {
          public System.Guid Id { get; set; }
          public string Product { get; set; }
          public string Store { get; set; }
          public string Warehouse { get; set; }
          public int Quantity { get; set; }
          public System.Guid OrderStatusId { get; set; }
      }
  </code></pre>
  
  <p>Javascript:</p>
  
  <pre><code>self.warehouseOrdersRequest = function (item) {
          ajaxHelper('/api/OrderStatus', 'GET').done(function (data) {
              self.orderStatuses(data);
          });
          self.warehouseOrders(item);
      }
  </code></pre>
  
  <p>Here item represents 1 object of the type <code>WarehouseDTO</code>, and <code>OrderStatuses</code> is given an array of objects {Id,Status}</p>
  
  <p>full code of the table</p>
  
  <pre><code>&lt;!--ko if : warehouseOrders()--&gt;
      &lt;div&gt;
          &lt;div class="col-md-4"&gt;
              &lt;div class="panel panel-default"&gt;
                  &lt;div class="panel-heading"&gt;
                      &lt;h2 class="panel-title"&gt;&lt;b data-bind="text: warehouseOrders().Name"&gt;&lt;/b&gt; - Orders&lt;/h2&gt;
                  &lt;/div&gt;
                  &lt;table class="table"&gt;
                      &lt;tr&gt;
                          &lt;th&gt;
                              @Html.DisplayName("Product")
                          &lt;/th&gt;
                          &lt;th&gt;
                              @Html.DisplayName("Store")
                          &lt;/th&gt;
                          &lt;th&gt;
                              @Html.DisplayName("Quantity")
                          &lt;/th&gt;
                          &lt;th&gt;
                              @Html.DisplayName("Order Status")
                          &lt;/th&gt;
                      &lt;/tr&gt;
  
                      &lt;!-- ko foreach: warehouseOrders().StoreOrders --&gt;
                      &lt;tr&gt;
                          &lt;td&gt;
                              &lt;b data-bind="text: Product"&gt;&lt;/b&gt;
                          &lt;/td&gt;
                          &lt;td&gt;
                              &lt;b data-bind="text: Store"&gt;&lt;/b&gt;
                          &lt;/td&gt;
                          &lt;td&gt;
                              &lt;b data-bind="text: Quantity"&gt;&lt;/b&gt;
                          &lt;/td&gt;
                          &lt;td&gt;
                              &lt;select data-bind=" value: OrderStatusId , options: $parent.orderStatuses(), optionsText: 'Status', optionsValue: 'Id'"&gt;&lt;/select&gt;
                              &lt;b data-bind="text: OrderStatusId"&gt;&lt;/b&gt;
                          &lt;/td&gt;
                      &lt;/tr&gt;
                      &lt;!--/ko--&gt;
                  &lt;/table&gt; 
              &lt;/div&gt;
              &lt;a href="#" data-bind="click: closeWarehouseOrders" class="btn btn-defaul"&gt;Cancel&lt;/a&gt;
              &lt;a href="#" data-bind="click: saveWarehouseOrders" class="btn btn-defaul"&gt;Save&lt;/a&gt;
          &lt;/div&gt;
      &lt;/div&gt;
      &lt;!--/ko--&gt;
  </code></pre>
  
  <p>I noticed something, that after I select an item, and its written into OrderStatusId the <code>&lt;b data-bind="text: OrderStatusId"&gt;&lt;/b&gt;</code> is displayed(it didn`t before), and yes, im sure there is a value in it.</p>