是否可以使用 Breeze 控制器使用 OData 服务(使用 .Net MVC 实现)?
我尝试从客户端应用程序添加服务引用,但是当我在服务上使用 Breeze 控制器时它根本找不到服务端点。
任何帮助将不胜感激。
是否可以使用 Breeze 控制器使用 OData 服务(使用 .Net MVC 实现)?
我尝试从客户端应用程序添加服务引用,但是当我在服务上使用 Breeze 控制器时它根本找不到服务端点。
任何帮助将不胜感激。
是的,您需要在服务器上创建一个 WCF 数据服务,如下所示:
[ServiceBehavior(IncludeExceptionDetailInFaults = true)]
public class ODataService : DataService<Your_EF_DbContext> {
// Add your Entity Set names here ... for example
config.SetEntitySetAccessRule("Customers", EntitySetRights.All);
config.SetEntitySetAccessRule("Orders", EntitySetRights.All);
config.SetEntitySetAccessRule("Employees", EntitySetRights.All);
// V3 supported in our next release as well.
config.DataServiceBehavior.MaxProtocolVersion = DataServiceProtocolVersion.V2;
config.UseVerboseErrors = true;
}
然后从微风客户端你需要打电话
breeze.config.initializeAdapterInstance("dataService", "OData");
初始化 Breeze 的 OData 处理。然后您创建一个 EntityManager 并连接到您的服务。像这样的东西:
var myEntityManager = new breeze.EntityManager("http://localhost:9009/ODataService.svc");
您现在可以通过 EntityManager 从数据服务中查询和保存。