如何使用BreezeJs和ASP.NET Web服务交付元数据?

如何使用BreezeJs和ASP.NET Web服务交付元数据?,breeze,Breeze,如何使用BreezeJs从web服务(asmx)获取数据 我的asmx web服务返回与datacontext无关的DTO对象。如何在不使用dbcontext中的metadata()方法的情况下,自动向breeze传递元数据 我已经看过Edmunds示例,但是在这个示例中,我们必须手动为每个实体编写元数据。使用asmx web服务和DTO对象可以避免吗?Breeze目前只接受两种格式的元数据,一种是原生json格式,另一种是csdl(也转换为json)格式(由实体框架支持的模型使用)。请注意,您

如何使用BreezeJs从web服务(asmx)获取数据

我的asmx web服务返回与datacontext无关的DTO对象。如何在不使用dbcontext中的metadata()方法的情况下,自动向breeze传递元数据


我已经看过Edmunds示例,但是在这个示例中,我们必须手动为每个实体编写元数据。使用asmx web服务和DTO对象可以避免吗?

Breeze目前只接受两种格式的元数据,一种是原生json格式,另一种是csdl(也转换为json)格式(由实体框架支持的模型使用)。请注意,您还可以以这些格式的组合交付此元数据。i、 e.通过对同一元数据存储的多个importMetadata调用


对于您的示例,您需要为每个“DTO”类型创建元数据,但这通常并不那么繁重。如果你有很多,你也可以编写一个简单的应用程序,使用反射为你构建元数据。

如果你有一个更大的模型,你不必手工编写元数据。有一种更简单的方法:使用EF作为元数据设计工具

查看DocCode示例的DocCode.DataAccess.EF中的
FoosMetadataProvider
。它为
Foo
类生成元数据,而该类实际上根本不存在于任何数据库中!您可以将DTO建模为映射到带有EF的数据库

使用EF作为元数据设计工具是在服务器上为实际不使用实体框架进行数据访问的模型生成元数据的一种快速方法。只是假装它是。。。然后忽略此后的
MetadataDbContext

您也不必在生产代码中携带EF。您可以在一个单独的项目中严格地使用它来生成元数据。将元数据倒入脚本中(DocCode中也有这样一个例子)。回想起您仅将EF用作设计时建模工具。没人知道;我保证我不会告诉你的

p、 美国:英孚在这个模特行业很在行。你没有滥用它,我也不认为这是黑客行为。您没有使用完整的框架。。。那又怎样。您也没有使用所有jQuery;这并没有阻止你在每一页上为你的客户服务,对吧