【发布时间】:2012-03-26 01:26:57
【问题描述】:
我正在使用 ASP.NET MVC 4 Beta 将网站构建为单页应用程序。
示例应用程序谈到添加新实体,它使用构造函数作为产品实体。
但是,我有许多实体类型,我不会为每个实体类型编写构造函数。这就是我创建新实体的方式(name 是数据源的名称,dataTarget.upshot.upshotData 是我从 GetEntities 方法返回的实体列表
在咖啡脚本中...
newItem = {}
for field, def of upshot.metadata(upshot.dataSources[name]._entityType).fields
do (field, def) ->
if def.array
newItem[field] = new ko.observableArray()
else
newItem[field] = new ko.observable()
upshot.addEntityProperties newItem, upshot.dataSources[name]._entityType
dataTarget.upshot.upshotData.push newItem
我的问题是这是最好的方法还是我错过了什么?我很惊讶结果似乎没有 createEntity 方法。
在javascript中...
newItem = {};
_ref = upshot.metadata(upshot.dataSources[name]._entityType).fields;
_fn = function(field, def) {
if (def.array) {
return newItem[field] = new ko.observableArray();
} else {
return newItem[field] = new ko.observable();
}
};
for (field in _ref) {
def = _ref[field];
_fn(field, def);
}
upshot.addEntityProperties(newItem, upshot.dataSources[name]._entityType);
dataTarget.upshot.upshotData.push(newItem);
【问题讨论】:
标签: asp.net-mvc-4 upshot