c# - 如何在 MVC 3 中将 WebForms .ascx 显示为局部 View

标签 c# asp.net asp.net-mvc asp.net-mvc-3 asp.net-mvc-4

我正在构建一个新的 ASP.NET MVC 3 应用程序。在此应用程序中,我想在我的新 MVC razor 应用程序的叠加层中显示一个旧的 WebForms 用户控件 (.ascx/.ascx.cs) 作为局部 View 。我在网上找不到任何关于这样做的信息。谁能告诉我这是否可行,如果可行,请指出一些文档?谢谢。

最佳答案

做这样的事情是非常糟糕的做法。然而,这可以通过以下代码实现:

@Html.Partial("_Foo")

然后在您的 _Foo 部分 View 中,您可以拥有以下内容:

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<dynamic>" %>
<%@ Register Assembly="SomeAssembly" Namespace="SomeNs" TagName="foo" %>

<foo:SomeControl runat="server" ID="fooControl" />

希望这对您有所帮助。看看这个问题:

关于c# - 如何在 MVC 3 中将 WebForms .ascx 显示为局部 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14328835/

相关文章:

c# - 不是外键列,不能在这里使用

c# - 将 Swagger 转换为 C# 对象

c# - 通过 C# 代码隐藏打开 CSS 弹出窗口

c# - 无法触发数据列表中的 DeleteCommand

asp.net-mvc - ActionLinks 在 FireFox 和 Safari 中并不总是有效

asp.net-mvc - asp.net mvc禁用ajax缓存

c# - 如何让 Rust FFI 返回结构数组或更新内存?

javascript - 通过javascript if else语句在不同的浏览器中显示不同的内容

c# - View 模型由大量数据组成。我应该通过表格传递所有内容吗?

c# - 如何在 TabPages/TabControl 中滚动