c# - 在 MVC 中包含来自程序集的 javascript

标签 c# javascript asp.net-mvc-3 embedded-resource

有什么方法可以在我的 MVC 3 View 中包含作为程序集嵌入资源的 javascript 文件吗?

我尝试创建一个 Action,从程序集中获取嵌入资源,然后返回 FileStreamResult,如下所示...

 public FileStreamResult Scripts()
 {
    System.Reflection.Assembly myassembly;
    myassembly = System.Reflection.Assembly.GetExecutingAssembly();
    System.IO.Stream file =
       myassembly.GetManifestResourceStream("Testing.testscript.js");
    return File(file, "application/x-javascript");
 }

然后在我的主视图中:

  <script type="text/javascript">

    @Html.RenderAction("Scripts")

  </script>

这似乎不太管用。

我宁愿能够以链接形式获取嵌入式资源,然后将其用作脚本的 src 值。所以类似:

<script src="@Html.GetEmbeddedResourceAsLink("Testing.testscript.js")"/>

有人知道怎么做吗?

最佳答案

GetWebResourceUrl 在这里可能有用:http://msdn.microsoft.com/en-us/library/system.web.ui.clientscriptmanager.getwebresourceurl.aspx

该 MSDN 页面上的示例代码适用于 WebForms,但我认为以下内容可能有效:

string rsname = "MyAssembly.my_script.js";

string url = ((Page)HttpContext.CurrentHandler)
    .ClientScript.GetWebResourceUrl(this.GetType(), rsname);

关于c# - 在 MVC 中包含来自程序集的 javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5746700/

相关文章:

javascript - 如何使用nodejs在mariadb中批量插入?

javascript - Jquery:在动态添加的输入控件上未触发 Keyup 事件

asp.net-mvc-3 - ASP.NET MVC 3 和 AJAX

c# - Paypal 自适应支付的 ReturnURL

c# - Web API 中的自定义路由只是重定向到当前页面

c# - 不必要的大括号会降低性能吗?

javascript - Rails 3 从另一个站点拉取数据

c# - 使用参数检索 LINQ to sql 语句 (IQueryable)

asp.net-mvc-3 - 如何在 OAuth 资源服务器中验证访问 token

asp.net - 将 MVC 2 项目升级到 MVC 5