我在尝试使用breezejs时遇到错误,类型是实体框架中的复杂类型(代码优先)。
未捕获错误:无法识别:Edm.Self.Address
的DataType使用breezejs的复杂类型是否有任何变通方法? 来自我的实体框架模型:
public class Address
{
public string Id { get; set; }
public string Street { get; set; }
public string City { get; set; }
public string ZipCode { get; set; }
public string Contry { get; set; }
}
答案 0 :(得分:1)
Breeze尚不支持Entity Framework Complex类型。这是我们的路线图,但我们还没有。请在Breeze网站(www.breezejs.com)上投票赞成此功能。
答案 1 :(得分:1)
尝试JayData,它支持查询或crud的复杂类型。一旦你在地址http:// {yourdomain} / {yourapi}上有一个工作的OData端点,你可以毫不费力地使用它:
<script src="http://include.jaydata.org/datajs-1.0.3.js"></script>
<script src="http://include.jaydata.org/jaydata.js"></script>
<script src="http://include.jaydata.org/jaydataproviders/oDataProvider.js"></script>
<script>
$data.service("http://{yourdomain}/{yourapi}", function(contextFactory) {
var context = contextFactory();
context
.myEntitySet
.filter(function(item) { return item.ComplexProp.Field == 42 || item.Title =="Tea"})
.forEach(function(item) {
console.log(item.Title);
});
});
</script>
请注意,使用JayData,您可以将TypeScript用于任何OData端点。使用TypeScript为您提供
强类型客户体验
关于功能的精彩提示
lambda谓词:filter(item =&gt; item.ComplexType.Field == 42)
答案 2 :(得分:1)
从v 0.80.1开始,breeze现在支持复杂类型。希望这会有所帮助。