虽然我已经发布了一个类似的问题(Breeze兼容SPA建设)并且可能在IdeaBlade和Telerik之间开始了一些好的事情,但我相信Breeze因其在服务器端访问Entity Framework的独特方法而值得更广泛的认可.因此,对我而言,即使是臭名昭着的完整JS框架(如Sencha或Wakanda)也 需要确保与Breeze合作.
Remo Blok在http://www.kendoui.com/blogs/teamblog/posts/13-02-21/breeze_js_and_the_kendo_ui_datasource.aspx的帖子中非常清楚地描述了KendoUI和Breeze之间的当前问题.简而言之,与Breeze的集成应该在实体级别进行 - 而不是JSON数据,这几乎每个人都处理JS客户端和SQL服务器之间的事务.
Wakanda是一个非常丰富的开发环境的典范,其中包含精心设计的GUI Builder,Debugger等,遗憾的是它不能与服务器端的"遗留数据"一起使用.
据我所知,Breeze在Angular上工作得很好,但是Angular需要AngularUI(http://angular-ui.github.io/),而这反过来又不像我想的那样完整,并且有一些JQuery依赖这可能会导致碰撞.很快,Breeze将与KendoUI(AFAIK)合作 - 是否有人知道其他一些JavaScript框架集合,这些集合将提供Visual Studio为Windows桌面应用程序创建提供的轻松程度?(毕竟,JavaScript应用程序是桌面应用程序,分配问题以非常优雅的方式解决).
关于这个主题有几个讨论(最接近的可能是在按钮点击时重定向新选项卡.(Response.Redirect)在asp.net C#中),但没有一个适合我的需要.这是我的情况:
代码
<asp:ImageButton ID="SearchButton"
runat="server"
OnClick="SearchButton_Click" OnClientClick="target='_blank';"/>
允许我在"代码隐藏"中处理事件(处理此重定向的URL),如果此标记位于"常规".aspx页面中,并且后面的代码中的事件处理程序SearchButton_Click很好.
我的情况与此不同之处在于此代码驻留在.ascx(用户控件)元素中,该元素在"顶级"页面上动态加载.这个相同的代码会导致当前页面被此"搜索页面"替换,甚至无法使用浏览器的"后退"按钮返回到原始上下文.
请注意,我更愿意在C#中处理这个问题
protected void SearchButton_Click(object sender, EventArgs e)
{
string what = queryText.Text;
Response.Redirect(baseUrl + what);
}
Run Code Online (Sandbox Code Playgroud)
每个建议都赞赏.