我知道同样的问题已被问到here。但是,这个答案并没有解决我的问题,因为在我的项目中,我没有指定“hasServerMetadata:false”。实际上,大多数时候,我都没有得到这个错误。
当我尝试创建新学生时出现此错误(第一次没问题),并且在编辑模式下,如果我单击浏览器的刷新按钮,则会出现此错误。如果我编辑现有学生,我没有这个问题。
我的项目基本上基于Breeze / Angular SPA ToDo模板。
以下是一些相关代码。
型号:
public class Student
{
public int Id { get; set; }
public string LastName { get; set; }
public string FirstName { get; set; }
[ForeignKey("ContactInfo")]
public int ContactInfoId { get; set; }
public ContactInfo ContactInfo { get; set; }
}
public class ContactInfo
{
public int Id { get; set; }
public string Street { get; set; }
public string City { get; set; }
public string State { get; set; }
public string ZipCode { get; set; }
}
datacontext.js:
function createStudent() {
var student = manager.createEntity("Student", { createdOn: new Date() });
student.contactInfo = manager.createEntity("ContactInfo");
student.contactInfo.state = "TX";
return student;
}
答案 0 :(得分:0)
根据互联网上的其他帖子,您必须致电
manager.fetchMetadata();
在创建新实体之前。