我有以下场景:我正在做一个出版物查找工具,这样用户就可以通过搜索字段和过滤器来查找文档。现在我们的预算很小,所以所有的数据都存储在一个json文件中(大约60条记录)。如果该项目成功,我们将拥有一个带有数据库和几千条记录的服务器。
我想使用breeze开发所有的查找解决方案,这样以后我就不需要做太多的修改了。问题是我找不到关于直接查询json文件的信息(没有服务器)。
你认为这是可能的吗?
发布于 2013-07-05 01:43:20
实际上,这是可能的。但是我想不出像设置一个简单的服务器那样简单的方法。这就像是用Visual Studio记录日志一样。也许你来自不同的环境?我想知道。即使在那里,通常也很容易使用某种可以返回JSON的http API编写一些内容。
如果你只有60条记录,我猜这是一个原型,你正试图匆忙地站起来。你太着急了,你甚至都不想用服务器...这有点奇怪,因为您需要一些东西来提供HTML、CSS和JavaScript文件,对吧?
使用JSON / express可以很容易地做到这一点;几乎就像设置读取和返回node.js文件的express路由一样简单。但这仍然需要一个服务器在某个地方运行(客户端自己的机器?)你还得学习一些基本的node.js
您可以完全使用HTML和JS脚本文件来完成此任务,除了文件系统之外,不需要任何服务器。
不经意间,我想我应该从writing a custom Breeze ajax adapter开始,这实际上是一个模拟:无论您对它提出什么要求,它都会返回完整的JSON数据。
您只需在应用程序启动时调用此函数,即可将实体加载到EntityManager缓存中。然后使所有后续查询都是本地查询。您可以将EntityManager默认查询策略设置为默认将所有查询转换为本地查询。
无论您做什么,都必须使用define metadata来描述JSON数据中的实体类型。我猜你只有一种类型,所以这应该是简单和快速的。
您还必须做些什么来告诉Breeze您查询的是哪种实体。在查询的末尾添加.toType('Foo');
可能就足够了。如果您需要在堆栈的较低级别使用更花哨的东西,则可以深入研究JsonResultsAdapter
。
所有这些都不是难事。但它也不是微风101。您没有遵循我们所认为的典型的应用程序开发路径。也许我们漏掉了什么。我很好奇,看看人们是否能理解你的情况。
https://stackoverflow.com/questions/17472792
复制