MVC 3:将用户控件添加到 Razor 视图

2023-12-24

我有一个 DLL,其中包含一个用户控件,在 Web 窗体视图中我可以通过使用轻松使用它

<%@ Register Assembly = "..." Namespace = "..." TagPrefix = "..." %>

但如何在 Razor 视图中执行此操作呢?


您无法将服务器端控件添加到 Razor 视图。一般来说,在 ASP.NET MVC 应用程序中这样做是非常糟糕的做法。由于 WebForms 视图引擎的传统,您可能会违反此规则,但在 Razor 中,事情已经变得更加清晰。

话虽这么说,你仍然可以在 Razor 中做一些色情内容,并包含一个包含用户控件的 WebForms 部分(完全不推荐,甚至不知道我为什么要提到它,但无论如何):

@Html.Partial("_Foo")

在哪里_Foo.ascx您可以包括服务器端控件:

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

<foo:SomeControl runat="server" ID="fooControl" />
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MVC 3:将用户控件添加到 Razor 视图 的相关文章

随机推荐

  • 我什么时候应该在 ios swift 上存储和重新存储到钥匙串?

    我在 appDelegate 中看到了一些方法 我不确定仅在其中一些方法中存储和重新存储用户状态是否涵盖了所有场景 func applicationWillResignActive application UIApplication Sen
  • .NET 的 Array.Sort() 方法使用哪种排序算法?

    NET 使用哪种排序算法Array Sort method Array Sort 根据输入的大小选择三种排序算法之一 如果大小少于 16 个元素 则使用插入排序算法 如果尺寸超过2 log N where N是输入数组的范围 它使用堆排序算
  • Tomcat:如何找出正在运行的Tomcat版本?

    我正在尝试让 Appfuse Tomcat jRebel 工作 Appfuse 默认使用 Cargo 下载 tomcat 版本 7 0 33 并将应用程序部署到其中 我希望使用已安装的 tomcat 版本 7 0 27 而不是下载的 tom
  • 通过 API 访问组织限制的 Google 表格

    我正在编写一个 Python 3 7 脚本 需要从 Google 电子表格读取数据 相关电子表格属于我的工作 Google 帐户所属的组织 我们将其称为 组织 电子表格权限设置为 组织中知道链接的任何人都可以查看 这个细节一直阻止我的应用程
  • Android Studio 4.2 不在 Gradle 栏中显示签名报告

    我正在使用 Firebase 启动一个新项目 并且必须从我的项目中获取 SHA1 密钥 最近 我将 Android Studio 更新到了 4 2 版本 签名报告选项卡从 Gradle 栏中消失了 按照图片操作 如何在 android st
  • 是否可以在 D3.js 中找到刻度之间的距离?

    有没有办法找出 x 轴上刻度线之间的距离 我使用序数标度与 rangeRoundBands 告诉我它没有刻度功能 var x d3 scale ordinal rangePoints margin left cWidth x domain
  • Sublime Text 记住打开的文件和文件夹

    我想做的就是每次打开 Sublime Text 时 它都会打开我之前处理的所有文件和文件夹 而不是每次打开 Sublime Text 时手动打开相同的文件夹和文件 例如 关闭一个窗口后 下次打开 Sublime Text 时 我希望打开同一
  • Rails 5.2 一些控制器操作给出了 InvalidAuthenticityToken

    之前我使用了一个 gem 它提供了一个控制器来接受外部服务以将一些数据发布到我们的应用程序中 然而在 Rails 5 2 中它停止工作了 当端点被触发时 它会引发ActionController InvalidAuthenticityTok
  • 当有人使用评论插件发表评论时收到通知

    所以我有一个iFrame粉丝页面上的应用程序 其中包括评论插件 有没有办法在每次有人添加评论时我 任何管理员都可以收到通知或电子邮件 You can 订阅 http developers facebook com docs referenc
  • 如何制作垂直输入框?

    这就是我要的 垂直输入字段 x 是关闭按钮 这是我到目前为止所拥有的 margin 0 padding 0 html body height 100 width 100 sidenav height 100 width 20 backgro
  • 在 R-Studio 中使用语法颜色打印

    在 R 中 我总是喜欢打印出脚本 因为它提供了一个很好的概述 并且可以调整最终的错误 我喜欢 R Studio 中的语法突出显示 因为它有助于阅读和快速理解代码 有没有办法打印出我在编辑器中看到的突出显示的文本 它不是 R Studio 解
  • 处理 Git 损坏的对象和树中的“有点 git”

    我尝试使用过滤器分支重写历史记录 以便使用以下命令删除占用 SHA 的少量内存 超过 300 MB git filter branch index filter git rm ignore unmatch cached
  • 数据转换(收集?)

    我有以下内容 id a b c d 1 10 20 33 42 2 30 20 32 42 3 34 24 35 32 4 32 24 35 25 5 22 14 35 36 但我宁愿以这种形式 只有列 a 和 b id aOrB valu
  • 在 C# Azure 函数 (v2) 中使用来自 Azure Key Vault 的不可导出客户端证书

    我正在尝试设置对外部 API 的客户端证书身份验证 这不可出口的客户端证书位于 Azure Key Vault 中 我的代码是应用服务计划中托管的 Azure v2 函数中的 C NET Core 由于客户端证书不可导出 因此我无法将其放入
  • 在apache中添加标头

    我在这台服务器上有 apache 和许多图像 例如 http test com images abc jpg我希望有可能这样做 如果用户像这样访问网址http test com images download abc jpgapache必须
  • 重新定位法律标签 ( MKAttributionLabel )

    我想将法律标签移至右侧 在 iOS 6 和 7 上 以下解决方案工作正常 但在 iOS 8 3 上似乎不起作用 我得到标签 然后用一个计时器 0 1秒 viewDidLayoutSubviews我称这个方法为 void moveLegalL
  • 我应该使用线程还是任务 - 多客户端模拟

    我正在编写一个客户端模拟程序 其中所有模拟客户端都针对服务器运行一些预定义的例程 这是一个在天蓝色中运行的具有四个实例的 Web 服务器 所有模拟客户端在连接到服务器后都运行相同的例程 任何时候我都想使用我的程序模拟 300 到 800 个
  • 将带点的线添加到 ggplot2 中的绘图中

    为了方便起见 我想编写一个函数 将线图和散点图添加到现有的图中 我定义 addlinetoplot lt function dataset varx vary p lt geom line data dataset aes string x
  • 如何使用express-validator npm 验证密码

    我正在使用 Node 和 Express Web 模块编写 REST API 为了验证我正在使用快速验证器npm 我想在密码字段上应用一些验证规则 如何使用快速验证器来实现它 我想申请密码的验证规则为 最小 8 个字符长 至少一个大写字母
  • MVC 3:将用户控件添加到 Razor 视图

    我有一个 DLL 其中包含一个用户控件 在 Web 窗体视图中我可以通过使用轻松使用它 但如何在 Razor 视图中执行此操作呢 您无法将服务器端控件添加到 Razor 视图 一般来说 在 ASP NET MVC 应用程序中这样做是非常糟糕