如何将 GWT 与 ASP.NET MVC3 集成?
我已经有一个 ASP.NET MVC3 网站,使用 Razor 作为视图引擎。 是否可以使用 GWT 创建 UI 并将其作为 < em>在我的 MVC3 网站中查看? 如何正确完成?
注意:我知道使用 JS API(例如 JQuery 或 Google Closure)在 ASP.NET MVC3 中构建 UI 更容易,但目前该项目需要 GWT。
I already have an ASP.NET MVC3 website, using Razor as the Views engine.
Is it possible to create the UI using GWT and invoke it as a View in my MVC3 website?
How is it done correctly?
Note: I know it easier to use JS API's such as JQuery or Google Closure to build UI in ASP.NET MVC3, but currently GWT is a requirement for the project.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
问题是你想走多页还是单页道路。
GWT 是一个工具包,可帮助您创建单页 Web 应用程序,其中后端仅充当数据源。这是一种SOUI(面向服务的用户界面)方法。
单个主机页面为 GWT 客户端应用程序提供服务,您可以在客户端处理流同步和其他用户界面模式 (MVP)。
如果您沿着这条路走下去,您可能不会使用 ASP.NET MVC3 的任何高级功能(特别是模型控制器视图部分)。
但是,也可以在多页面设置中使用 GWT,其中后端负责“流同步”,并且您可以将 GWT 作为小部件嵌入到相应的视图/页面中。
您最终会为每个主机页面/MVC 视图获得小型 GWT 应用程序。您不会获得代码重用方面的所有优化,因为每个主机页面都将是一个单独的 GWT 应用程序,因此共享代码将被多次下载。
关于您的具体问题以及 ASP.NET MVC3 和 Razor 的技术方面:
我无法对此发表评论,因为我没有 ASP.NET MVC3 的经验。但一般来说,GWT 应用程序可以通过简单地包含 nocache.js 引导文件来嵌入到任何网页中(如果您需要历史记录支持,还可以嵌入隐藏的 iFrame)。
有关详细信息,请参阅此处。
注意:您可能也会对这个项目感兴趣。
The question is whether you want to go down the multi-page or the single-page road.
GWT is a toolkit which helps you create single page web-applications where the backend only serves as a datasource. This is a SOUI (Service Oriented User Interface) approach.
A single host page serves the GWT client application and you deal with flow synchronization and other user interface pattern (MVP) on the client side.
If you go down this road, you will probably not use any of ASP.NET MVC3's advanced features (specifically the model controller view part).
However it is also possible to use GWT in a multi-page setup where the backend takes care of the "flow synchronization" and you embed GWT as widgets in the corresponding views/pages.
You end up with small GWT apps for each host page/MVC view. You won't get all the optimizations in code-reuse because each host page will be a separate GWT app and thus shared code will be downloaded multiple times.
Regarding your specific question and the technical aspects of ASP.NET MVC3 and Razor:
I can't really comment on that because I don't have experience with ASP.NET MVC3. But in general GWT apps can be embedded in any web-page by simple including the nocache.js bootstrap file (if you want history support also embed the hidden iFrame).
See here for more details.
Note: this project could be also of interest to you.