1
我在微風中是新的,我將嘗試使用此代碼刪除實體:微風錯誤嘗試刪除實體
export var deleteRow= function (selectedRow) {
isDeleting(true);
selectedRow.entityAspect.setDeleted();
(<any>datacontext).saveChanges()
.done(
function() {
router.replaceLocation(listUrl);
})
.fail(saveFailed);
//}
isDeleting(false);
};
和DataContext的是:在線路happend
export var saveChanges = function() {
return manager.saveChanges()
.then(saveSucceeded)
.fail(saveFailed);
function saveSucceeded(saveResult) {
log('Saved data successfully', saveResult, true);
}
function saveFailed(error) {
var msg = 'Save failed: ' + getErrorMessages(error);
logError(msg, error);
error.message = msg;
throw error;
}
};
錯誤:
selectedRow.entityAspect.setDeleted();
日誌(鉻控制檯)告訴講講:
「未捕獲的錯誤:無法解析綁定。 消息:TypeError:無法調用null的方法'dictionary'; 綁定值:文本:。row.assessmentType()字典()名「
的對象行這是在我的標記用我的集合中標識行別名:
<!-- ko foreach: { data: assessmentRegistrations(), as: 'row' }-->
<tr data-bind="css: { koAssumptionGridViewRow: true }, style: { color: 'inherit' }">
<td><small data-bind="text: row.toShortDate"></small></td>
<td><small data-bind="text: row.fishgroup().fishgroupName"></small></td>
<td><small data-bind="text: row.assessmentType().dictionary().name"></small></td>
<td><small data-bind="text: row.site().name"></small></td>
<td><small data-bind="text: row.site().name"></small></td>
<td></td>
<td><small data-bind="text: row.assessmentFollowUpStatus().dictionary().name"></small></td>
</tr>
任何幫助apreciated :)
我刪除了我的HTML視圖中的所有綁定代碼,是的,你是對的,它的工作,所以這是一個淘汰賽問題。這裏的奇怪是爲什麼我現在正在運行該問題的線程(setDeleted())... – Rolando
另一種可能性是,當您調用setDeleted()Breeze時,將您的實體與其它實體的所有關係斷開連接。所以我的猜測是你的導航屬性在調用setDeleted()和ko無法綁定到這個之後開始返回null,特別是當你試圖訪問一個屬性的屬性,即row.site()。name where row.site === null; –
好的,我所做的只是一個不同的問題。從我的datacontext我得到了對象的Id我想要刪除,然後我打電話給我的API控制器刪除對象和他們的孩子(每個父母約140行)。無論如何,我會將你的答案標記爲正確的。謝謝 ! – Rolando