У меня есть сценарий, где я знаю первичный ключ объекта (полученный из несвязанного источника), и я хочу обновить только 1 свойство (db). Я еще не получил объект из базы данных. Если возможно, мне бы не пришлось делать эту дополнительную поездку туда и обратно.Использование breeze.js Я только хочу отправить обновленные свойства для не кэшированного объекта
Я создаю объект, используя manager.createEntity. Я обновляю одно из свойств. Затем установите для параметра entityApect значение setModified(); При сохранении изменений все свойства, которые не были обновлены, устанавливаются в значения по умолчанию, а сгенерированная инструкция SQL UPDATE пытается обновить все сопоставленные столбцы.
Есть ли способ рассказать ветерок только генерировать SQL для конкретных свойств/столбцов?
благодаря
Breeze (на клиенте) не генерирует SQL; это делается на сервере. Какие серверные технологии вы используете? –
.net Web API и EF6 с SQL Server – mwill
Я выяснил решение, но хотел бы знать, поддерживается ли if. Я знаю, что SQL генерируется в EF, но EF нужно сказать, что сгенерировать, откуда приходит бриз. Глядя на JSON, кажется, что если свойство было в исходном файлеValuesMap, оно будет включено в SQL обновить. Если бы не было карты, тогда весь объект был бы обновлен. Поэтому в моем примере выше, после выполнения всех шагов, я также установил исходное значение: obj.entityAspect.originalValues.myProperty = 0; (myProperty является числовым). Это правильно обновило только эту колонку. – mwill