我们目前有一个vb Web表单应用程序,我们希望将其迁移到C#MVC。我们不想进行完全重写,而是希望一次移动一个项目。
我知道可以使用webforms和mvc进行混合项目,详情如下:
http://blog.falafel.com/integrating-aspnet-mvc-4-into-existing-web-forms-applications/
但我遇到的问题是,如果Web应用程序的外部页面仍然是vb / asp.net Web表单,并且当用户单击某个区域时,即已在c#/ razor mvc中重写的按钮,我该如何加载/指导用户并在Web表单中呈现剃刀视图。
我可以在网页表格中渲染剃刀视图吗?
如果没有,我可以直接转到新标签吗?
任何想法如何做到这一点?
由于
答案 0 :(得分:0)
我目前在同一个hubryd项目上工作,我有WebForm Part和MVC部分。
我们试图摆脱WebForms部分。
我提出的策略是:
OnClientClick='<%# "showEntityList("+Eval("Id")+"); return false;" %>'
进行ajax调用的js代码(我在此函数后面使用jquery对话框):
function showEntityList(Id) {
dialogSaveCancel(
{
title: "Entity List",
urlPost: '/ControllerName/ControllerMethodName?id=' + Id,
callback:
{
success: function (data, textStatus, jqXHR) {
var url = 'test';
window.location.replace(url);
},
error: function () { }
}
});
};
所以你可以在WebForms部分获得你的Razor View。
如果你想要一个新标签,你也可以使用js:
function ShowInNewTab(path) {
window.open(SiteAppRootPath + path, '_blank');
}