【问题标题】:Can I create a controller in a common assembly which will be accessible by any assmbly which references it?我可以在通用程序集中创建一个控制器,任何引用它的程序集都可以访问该控制器吗?
【发布时间】:2012-10-30 19:32:36
【问题描述】:

我有一个通用程序集,其中放置了很多辅助函数等。我想创建一个通用的EmbeddedResourceController(有点像 WebResource.axd 用于 WebForms),我的所有 HTML 助手都可以使用它来嵌入和显示他们的脚本和风格。问题是,我需要能够以与项目无关的方式(即不知道该项目中的任何路由/控制器规则)从我的 HTML 帮助程序代码创建包含路径。

理想情况下,我想从帮助程序代码中创建一个像 <script type="text/javascript" src="/EmbeddedResource/myJsScript.js"></script> 这样的包含,并让它在每个使用我的通用 dll 的项目中工作。

【问题讨论】:

    标签: asp.net-mvc-3 embedded-resource code-reuse


    【解决方案1】:

    如果我正确理解您的问题,您可以在每个项目中将此 EmbeddedResource 控制器用作控制器的基础:

    EmbeddedResourceController : EmbeddedResourceBase
    

    EmbeddedResourceBase 在您的公共 dll 中的位置

    【讨论】:

    • 我希望不需要在单个项目中添加任何内容。
    【解决方案2】:

    也许您可以使用 HTML 帮助程序扩展。在下面的问题Populate a Razor Section From a Partial

    中看看贝尔先生的答案

    【讨论】:

      猜你喜欢
      • 2014-07-25
      • 2022-01-20
      • 2012-07-13
      • 2017-09-30
      • 2013-05-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多