asp.net – 如何添加.aspx页面到现有的MVC 4项目?
我有工作的ASP.NET MVC 4项目.我想添加到这个MVC项目的另一个WebForms项目的.aspx页面.我有几个问题:
>我应该在哪里复制这个.aspx文件,我应该如何配置我的 我已经看过links贴在this的问题,但他们似乎已经过时了.很多链接解释了如何添加MVC到WebForms,但我正在寻找所有的方式. 任何有用的链接将不胜感激.谢谢! 解决方法
解决方案:
事实证明,将.aspx页面添加到现有的MVC项目中,比将.vx添加到.aspx更容易完成任务.对我来说最有趣的是找出在一个项目的范围内,Webforms和MVC都在IIS上共享一个运行时. 所以我做了什么 将另一个项目的.aspx页面添加到我的MVC项目的根目录 public class WebFormController : Controller { } public static class WebFormMVCUtil { public static void RenderPartial( string partialName,object model ) { //get a wrapper for the legacy WebForm context var httpCtx = new HttpContextWrapper( System.Web.HttpContext.Current ); //create a mock route that points to the empty controller var rt = new RouteData(); rt.Values.Add( "controller","WebFormController" ); //create a controller context for the route and http context var ctx = new ControllerContext( new RequestContext( httpCtx,rt ),new WebFormController() ); //find the partial view using the viewengine var view = ViewEngines.Engines.FindPartialView( ctx,partialName ).View; //create a view context and assign the model var vctx = new ViewContext( ctx,view,new ViewDataDictionary { Model = model },new TempDataDictionary() ); //render the partial view view.Render( vctx,System.Web.HttpContext.Current.Response.Output ); } } 将其添加到.aspx页面的codebehind.cs.那么你可以从webforms这样调用它: <% WebFormMVCUtil.RenderPartial( "ViewName",this.GetModel() ); %> >由于我只在所有页面中共享了“菜单”,所以我将其添加到部分视图中,然后在_Layout.chtml中调用它 @Html.Partial("_Menu") 并在MasterPage.Master中这样: <% WebFormMVCUtil.RenderPartial("_Menu",null ); %> 这就是它的一切.因此,我的_Layout.chtml和MasterPage.Master使用相同的共享部分视图.我可以通过浏览它们来访问.aspx页面.如果路由系统有一些问题,可以添加route.IgnoreRoute(“{resource} .aspx / {* pathInfo}”);到App_Start中的routeConfig. 我使用的来源: > Combine asp net mvc with webforms 我希望以后能帮助别人. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-mvc – ASP.NET MVC4 CustomErrors DefaultRedirec
- asp.net – 在IIS中启用内容过期可能有什么缺点?
- 设计模式 – 如何在自己的应用程序域中分离webapi控制器?
- asp.net-mvc – 我的CRUD LINQ代码在哪里? ASP.NET MVC
- 对象Equals相等性比较的通用实现
- 在动作之外执行异步操作asp.net mvc
- ASP.net MVC路由:使用QueryStrings是一种好的风格吗?
- asp.net – 如何获取控制器和操作名称在OnActionExecuting?
- 如何在IIS上解决接近100%的CPU利用率
- asp.net – Team Build 2010和web.config转换的问题
- asp.net-mvc – 什么是Owin rememberBrowser做什
- ASP.NET DropDownList不保留所选项目在回发
- asp.net-mvc – 如果在Web配置中禁用会话状态,则
- 使用ASP.NET MVC在JS文件中设置jQuery的ajax url
- kendo-ui – Kendo DataSource如何在使用DataTab
- asp.net-core-mvc – 什么是Asp.Net Core MVC中的
- asp.net – 当我提交时,为什么我的文本框无法识别
- asp.net-core-2.1 – 如何在asp.net Core 2.1.1中
- asp.net – project.json中的“依赖关系”和“框
- asp.net – 是否有支持请求参数连接的URL构建器?