gpt4 book ai didi

asp.net-mvc - 将 javascript 文件存储在与 ASP.NET Core 1.1 中的 View 相同的文件夹中?

转载 作者:行者123 更新时间:2023-12-05 02:19:37 25 4
gpt4 key购买 nike

在 ASP.NET Web 应用程序...MVC(非核心)中,我可以在 web.config 文件中添加此...

<system.webServer>
<handlers>
<add name="JavaScriptHandler"
path="*.js"
verb="*"
preCondition="integratedMode"
type="System.Web.StaticFileHandler" />
<remove name="BlockViewHandler"/>
<add name="BlockViewHandler"
path="*"
verb="*"
preCondition="integratedMode"
type="System.Web.HttpNotFoundHandler" />
</handlers>
</system.webServer>

然后我可以将 javascript 文件放在与 View 文件相同的文件夹中。

我能以某种方式在 ASP.Net Core 1.1 中做同样的事情吗?

谢谢

最佳答案

这里是微软官方文档:Working with Static Files in ASP.NET Core

作为 OWIN 管道的一部分,默认情况下不会呈现静态文件,包括“wwwroot”文件夹中的静态文件。过去在 web.config 中处理的地方,现在一切都通过 OWIN 管道。您必须添加 StaticFile 中间件,这将允许它们被渲染。默认实现允许呈现“wwwroot”下的所有文件。

public void Configure(IApplicationBuilder app)
{
app.UseStaticFiles();
}

上面的链接中提供了文档,用于添加其他位置以允许从中呈现文件。这不是明确的,但您可以查看 StaticFile Middleware 的实现在 Github 上获取自定义实现的想法。

以下代码将添加 StaticFiles 中间件以仅允许从“Views”文件夹中呈现 javascript 文件。您可以通过向词典添加项目来添加其他文件。

public void Configure(IApplicationBuilder app)
{
app.UseStaticFiles();

// Render only .js files in "Views" folder
app.UseStaticFiles(new StaticFileOptions()
{
FileProvider = new PhysicalFileProvider(
Path.Combine(Directory.GetCurrentDirectory(), @"Views")),
RequestPath = new PathString("/Views"),
ContentTypeProvider = new FileExtensionContentTypeProvider(
new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase)
{
{ ".js", "application/javascript" },
})
}
);
}

您唯一的选择是添加自定义 grunt(或 gulp)任务,将“Views”文件夹中的 javascript 文件复制到“wwwroot”文件夹中创建的新文件夹中。您可以在此处查看一些编译 TypeScript 代码和执行类似操作的示例。 Using Grunt Tasks

关于asp.net-mvc - 将 javascript 文件存储在与 ASP.NET Core 1.1 中的 View 相同的文件夹中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42045714/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com