将WebForm VB Web应用程序转换为MVC C#逐渐

问题描述:

我们目前有一个vb web表单应用程序,我们希望将其迁移到C#MVC。我们并不想完全重写,而是希望一次移动一个项目。将WebForm VB Web应用程序转换为MVC C#逐渐

我知道它可能与web表单的混合项目和MVC详述如下:

http://blog.falafel.com/integrating-aspnet-mvc-4-into-existing-web-forms-applications/

但我的问题是,如果Web应用程序的外部页保留VB/asp.net网页形式,当用户点击一个区域,即在c#/ razor mvc中重写的按钮时,如何加载/指导用户并在Web表单中呈现剃须刀视图。

我可以在webforms中渲染剃须刀视图吗?

如果不是我可以直接到一个新的标签?

任何想法如何做到这一点?

感谢

+0

通过你的意思是母版页外的页面?只需要一个单独的MVC母版页来替换Web窗体。顺便说一句,你没有任何理由从Web窗体迁移。很可能这是一个毫无意义的练习。 – Stilgar 2014-11-06 07:27:56

我目前正在同hubryd项目中,我有一部分的WebForm和MVC部分。

我们试图摆脱WebForms部分。

,我拿出的策略是:

  1. 获取从Web窗体到BL层中的所有逻辑解决方案中的
  2. 更换所有模态对话框不需要回来后的结果与MVC +剃刀局部视图。 这很容易通过AJAX来完成。在WebForm中可点击元素:

OnClientClick='<%# "showEntityList("+Eval("Id")+"); return false;" %>'

js代码,使AJAX调用(使用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() { } 
       } 
     }); 
}; 

所以你可以在Web窗体部分的Razor视图。

  1. 最后我做什么时用MVC部分视图取代所有简单部分是使用RazorView重新获得WebForm。

如果你想有一个新的选项卡,你也可以用js:

function ShowInNewTab(path) { 
    window.open(SiteAppRootPath + path, '_blank'); 
} 
+0

谢谢你的关注 – tau 2014-11-06 09:31:20