【问题标题】:Upshot.js Remote Data Source ExampleUpshot.js 远程数据源示例
【发布时间】:2012-04-10 03:53:34
【问题描述】:

我正在研究 MVC 4 Beta 以及 SPA 选项。我想到将服务端点添加到项目中,然后使用 Upshot 连接到它们。但是,我要构建的应用程序将与外部 Web 服务进行通信。换句话说,我不能将 Upshot 指向本地控制器来获取元数据信息,因为它没有它。相反,我会将它指向一个 REST 服务端点。

是否有人提供有关将 Upshot 远程数据源连接到真正的远程数据源的示例或参考信息?我正在寻找一个与之前提出的其他问题不同的完整示例。我似乎还无法理解它。

谢谢

【问题讨论】:

    标签: knockout.js asp.net-mvc-4 asp.net-web-api upshot


    【解决方案1】:

    我确实在 Upshot 及其 RemoteDataSource 对象上玩了很多,我可以向您保证,它是 OData 服务之上的一个辅助库。如果您阅读我关于过滤和排序数据的帖子,您会发现 OData 约定刚刚泄漏。

    http://bartjolling.blogspot.com/2012/04/building-single-page-apps-with-aspnet.html

    只需跳过文章的前三分之一,直到您进入有关 Upshot 生成的 GET 请求的有趣部分。如果您浏览 upshot.js 代码,您会看到“get”函数使用 Ajax GET 请求,而“submit”函数使用 Ajax POST 请求。 “操作”属性指示它是插入、更新还是删除操作。

    如果您想要 REST,那么 Upshot 不适合您。有关详细信息,请参阅 ASP.NET 论坛上的此问题:http://forums.asp.net/t/1776372.aspx/1?SPA+and+REST

    【讨论】:

    • 我明白你为什么这么说。显然它允许 OData 输入,但您不必添加任何 OData 参数,然后它就变成了一个简单的 REST 调用。哎呀,你甚至可以在 UpShot 中添加 POST、PUT 和 DELETE,Steven Sanderson 在他的 Delivery Tracker 示例应用程序中展示了这一点。我唯一的一点是它能够进行所有这些调用,但如果不指定模型,它似乎无法做到,这是我最初的问题。我基本上想使用远程 Web API 构建 Delivery Tracker 应用程序,有什么想法可以实现吗?
    • 上个月我一直在剖析、重新创建和改进 Steven 在我的博客上的 DeliveryTracker 应用程序。老实说,我不知道您在 upshot.js 中哪里看到过 REST 支持,因为根据我的经验,它不在那里。我已经用我在 upshot.js 源代码中所做的一些进一步研究的结果更新了我的答案......我想你总是可以自己编辑 upshot.js 文件并将其添加进去。它不应该是很难,但您将失去批量“变更集”功能的好处
    • 我刚刚意识到您评论中问题的正确答案。 WebApi 确实支持 REST,但您不能使用 upshot.js 与 RESTful 服务进行通信。您将需要找到一个知道如何与 RESTful 服务通信的不同 javascript 库
    【解决方案2】:

    我没有过多地接触 upshot.js,但我的理解是大部分功能是为 ODAta 提供者服务的。您将在 SPA 中看到提供元数据的结果 HTML 帮助程序。

    如果您有 REST(非 OData)接口,我不确定 upshot 是否可以帮助您。

    【讨论】:

    • 这听起来不对。事实上,BigShelf 示例应用程序除了正常实现外,还有一个仅适用于 OData 馈送的特殊情况。所以我认为这是不对的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-03-10
    • 2016-05-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多