breezejs 实体查询失败
breezejs EntityQuery fail
我正在玩弄 breezejs 淘汰 Todo-list tutorial/template
(http://www.asp.net/single-page-application/overview/templates/breezeknockout-template)。
我决定创建一个新的 Employees class 并看看我是否可以绑定到一个员工列表。
该视图引用了 VM 'results' 中的一个变量,该变量应该是一个可观察的员工数组。
<section data-bind="foreach: results">
<article>
<header>
<form>
<input type="text" data-bind="value: firstName" />
</form>
</header>
</article>
</section>
在视图模型中,我添加了结果变量和一行,以便自动将员工加载到结果变量中。
/* Defines the Todo application ViewModel */
window.todoApp.todoListViewModel = (function (ko, datacontext) {
var results = ko.observableArray();
var todoLists = ko.observableArray(),
error = ko.observable(),
viewmodel = {
showTestPage: showTestPage,
results: results,
todoLists: todoLists,
error: error,
addTodoList: addTodoList,
deleteTodoList: deleteTodoList,
clearErrorMessage: clearErrorMessage,
searchTerms: ko.observable(""),
performSearch: performSearch
};
// load todoLists immediately
datacontext.getTodoLists(todoLists, error);
// load employees
datacontext.getEmployees(results, error);
return viewmodel;
这是我的数据上下文函数
function getEmployees(empObservable, errorObservable)
{
return breeze.EntityQuery
.from("Employees")
.where('lastName', 'startsWith', 'G')
.orderBy("lastName")
.using(manager).execute()
.then(getSucceeded)
.fail(getFailed);
function getSucceeded(data) {
empObservable(data.results);
}
function getFailed(error) {
errorObservable("This is broke *BREAK*" + error.message + "*BREAK*");
}
}
发生故障,我看到的 error.message 包括我应该在结果中获得的数据。它甚至被正确排序和过滤,但我只在下面显示一条记录作为示例。我没有收到任何其他错误消息。
This is broke *BREAK*[{"$id":"1","$type":"ToDoBreeze.Models.Employee, ToDoBreeze","ID":"12345","LastName":"Gaston","FirstName":"Jake"}]*BREAK*
我想没有其他使用此模板的人遇到过类似的问题吧?
我花了一段时间才找到适合这个问题的词,但看起来这就是答案。我想我会把我的留在上面以防其他人找到它。
(Query failed and the error.message is the data)
基本上,我在模型中的员工初始值设定项中有一些不应该存在的东西。
我正在玩弄 breezejs 淘汰 Todo-list tutorial/template (http://www.asp.net/single-page-application/overview/templates/breezeknockout-template)。 我决定创建一个新的 Employees class 并看看我是否可以绑定到一个员工列表。
该视图引用了 VM 'results' 中的一个变量,该变量应该是一个可观察的员工数组。
<section data-bind="foreach: results">
<article>
<header>
<form>
<input type="text" data-bind="value: firstName" />
</form>
</header>
</article>
</section>
在视图模型中,我添加了结果变量和一行,以便自动将员工加载到结果变量中。
/* Defines the Todo application ViewModel */
window.todoApp.todoListViewModel = (function (ko, datacontext) {
var results = ko.observableArray();
var todoLists = ko.observableArray(),
error = ko.observable(),
viewmodel = {
showTestPage: showTestPage,
results: results,
todoLists: todoLists,
error: error,
addTodoList: addTodoList,
deleteTodoList: deleteTodoList,
clearErrorMessage: clearErrorMessage,
searchTerms: ko.observable(""),
performSearch: performSearch
};
// load todoLists immediately
datacontext.getTodoLists(todoLists, error);
// load employees
datacontext.getEmployees(results, error);
return viewmodel;
这是我的数据上下文函数
function getEmployees(empObservable, errorObservable)
{
return breeze.EntityQuery
.from("Employees")
.where('lastName', 'startsWith', 'G')
.orderBy("lastName")
.using(manager).execute()
.then(getSucceeded)
.fail(getFailed);
function getSucceeded(data) {
empObservable(data.results);
}
function getFailed(error) {
errorObservable("This is broke *BREAK*" + error.message + "*BREAK*");
}
}
发生故障,我看到的 error.message 包括我应该在结果中获得的数据。它甚至被正确排序和过滤,但我只在下面显示一条记录作为示例。我没有收到任何其他错误消息。
This is broke *BREAK*[{"$id":"1","$type":"ToDoBreeze.Models.Employee, ToDoBreeze","ID":"12345","LastName":"Gaston","FirstName":"Jake"}]*BREAK*
我想没有其他使用此模板的人遇到过类似的问题吧?
我花了一段时间才找到适合这个问题的词,但看起来这就是答案。我想我会把我的留在上面以防其他人找到它。 (Query failed and the error.message is the data)
基本上,我在模型中的员工初始值设定项中有一些不应该存在的东西。