9

对于当前的项目,我试图了解如何有效地利用 Knockout 2.1.0、Upshot 1.0.0.2、ASP.NET MVC4 和 Entity Framework 4.3。有很多基本的架构问题似乎没有现成的答案。我列举了我的几个问题(在单独的帖子中),希望有人可以为我自己和其他人提供合理的指导,因为我们试图在现实世界的应用程序中实现这种组合。

在2 月的荷兰 TechDays 上, Steve Sanderson就 Knockout 和 Upshot.js 发表了精彩的演讲,他提到 Upshot 可以适应多种连接服务器的方法。(如果您还没有看过演示文稿,那么值得一看。您可以在http://channel9.msdn.com/Events/TechDays/Techdays-2012-the-Netherlands/2159查看。)

不幸的是,他没有时间详细说明这些通信机制是什么,或者推荐了哪些以及在什么情况下。

根据Denver Developer在其题为“深入了解 Upshot.js”( http://denverdeveloper.wordpress.com/2012/03/07/digging-into-upshot-js/ ) 的博客文章中的说法,共有三个数据提供者由Upshot.js。这些都是:

• 默认为DataProvider()并使用/Submit 方法和您提供的操作使用jQuery 的$.ajax 方法获取数据。(AG 注意:我相信这通常与WebAPI 公开的DbDataController对象相关,但我不确定确切的限制是什么。)

• 下一个是riaDataProvider() – 与第一个类似,但它使用 /json/SubmitChanges 方法和 /json/{your option} 来获取数据

• 最后,我们还有odataDataProvider() ——这个完全不同,因为它目前不支持更新数据——它是只读的。

许多密切相关的问题自然而然地出现在为典型用途选择供应商的问题上。

  • 哪个数据提供者更好——默认数据提供者还是 RIA 数据提供者?
  • 推荐哪一种正常使用,在什么情况下使用?
  • 使用普通DataProviderriaDataProvider对性能有何影响?

在相关的说明中,互联网上似乎很少有关于结果的文档。除了苦读 upshot.js 中的 4700 多行代码之外,这个库还有其他像样的文档来源吗?

到目前为止,我查看的资源包括以下(以及更多)。

4

2 回答 2

13

您应该避免使用 upshot 并改用http://www.breezejs.com/

ASP.Net MVC 路线图(注意没有进一步开发结果): http ://aspnetwebstack.codeplex.com/wikipage?title=Roadmap

密切关注路线图以及 john Papa 的博客 ( http://www.johnpapa.net/building-single-page-apps-with-knockout-jquery-and-web-api-ndash-the-story-begins ) - 这应该让你走在正确的道路上

更新:我刚开始玩热毛巾 - 它将 Breeze、Durandal.js Knockout.js 和 Twitter Bootstrap(以及其他)角色变成了一个非常好的模板......到目前为止它看起来很酷

https://github.com/johnpapa/HotTowel

于 2012-12-05T20:29:45.507 回答
-1

使用哪个提供程序取决于您的服务器端 dataService 类型。在我的实践中,它们是:

  1. WCF RIA 服务 + 结果(使用 riaDataProvider)+ 淘汰赛。
  2. ASP.NET WEB API + 结果(使用 dataProvider)+ 淘汰赛。(两者都会为您做好事!)
  3. WCF 数据服务 + 结果(使用 oDataProvider)+ 淘汰赛。(现在只读取数据)
    对于oData服务器端服务,“JayData”是一个不错的选择
于 2012-06-05T00:19:11.417 回答