我正在开发基于ASP.NET MVC的测试应用程序.我是CSS的新手,所以我也在学习.
我创建了一个名为"new.master"的母版页,并创建了一个新的CSS"new.css".我从控制器调用视图:
return View ("About", "new");
Run Code Online (Sandbox Code Playgroud)
我正在做的是我经常更新css和母版页.所以我经常在调试模式下运行应用程序.过了一段时间,我停止看到css变化的影响.当我在chrome中"查看源代码"并检查css时,它显示旧版本.
当我更改母版页和css的名称时,我开始收到更新的视图,但这有效,但我再次停止获取CSS更新.你遇到过这个问题吗?我该如何解决?(非常烦人!)
我们刚刚在解决方案中将除一个之外的所有 Web 应用程序项目从 .NET Core 3.1 项目升级到 .NET 6。这些是使用 Razor 的 ASP.NET Core 3.1 项目。以下是我们在热重载方面看到的结果:
当我们在 VS 2019 中运行这些项目时,我们可以刷新任何项目中的页面,我们将看到更新。我们是否缺少一些设置?
我正在使用 browserlink 来编辑 CSS 样式,效果非常好。不幸的是,如果我更改 .cshtml 文件中的某些内容,我的浏览器会在保存时自动刷新,但更改不可见。
如果我关闭应用程序并再次打开,更改就会可见。看起来我的应用程序正在某处缓存视图,而不是将我所做的更改重新加载到我的文件中。
这确实不是浏览器缓存问题。应用程序确实发送未更改的 html 结果。
如何在开发中禁用此类缓存功能?
我正在使用最新的 ASP NET Core MVC 库。
编辑:如果我更改 _layout 中的任何内容,网站就会更新,没有任何问题。
编辑2:启动功能
public void ConfigureServices(IServiceCollection services)
{
services.AddWebSocketManager();
var env = Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT");
var path = System.AppDomain.CurrentDomain.BaseDirectory;
var machineName = Environment.MachineName;
var confBuilder = new ConfigurationBuilder();
IConfigurationBuilder conf = confBuilder.SetBasePath(path);
if (env == "Development")
{
conf = conf.AddJsonFile($"appsettings.json", optional: true, reloadOnChange: true);
conf = conf.AddJsonFile($"appsettings.Development.json", optional: true, reloadOnChange: true);
conf = conf.AddJsonFile($"appsettings.{machineName}.json", optional: true, reloadOnChange: true);
conf = conf.AddJsonFile($"appsettings.External.json", optional: true, …Run Code Online (Sandbox Code Playgroud) 我正在使用 Rider 编写一个 MVC 应用程序,一个行为困扰着我:当我修改视图时,我必须重建解决方案并重新启动它以查看更改。当我从浏览器重新加载站点时,是否可以直接看到修改后的视图?
顺便说一句,IDE(或 dotnet?)不认为视图更改是触发重建的更改。我必须手动单击“重建选定的项目”,然后才能启动应用程序的修改版本。这是为什么?
我正在从 asp-net core 2.2 迁移到 asp-net core 3.0,我使用这个块来定义我的文件类提供程序,如你所知,它用于创建动态剃刀视图(动态 cshtml),我的问题是该段确实不行。
我已经实现了经典:
services.Configure<RazorViewEngineOptions>(opts =>
opts.FileProviders.Add(
new MyCostumizedFileProvider()
)
);
Run Code Online (Sandbox Code Playgroud)
在哪里:
MyCostumizedFileProvider:是文件提供程序的实现。
RazorViewEngineOptions:是在 aspnet core 2.0 中使用的 Razor 运行时编译器的处理程序。
在asp-net核心中我已经检查过
例如:
services.Configure<MvcRazorRuntimeCompilationOptions>(options => {
options.FileProviders.Clear();
options.FileProviders.Add(new MyCostumizedFileProvider());
});
Run Code Online (Sandbox Code Playgroud)
或者
services.Configure<MvcRazorRuntimeCompilationOptions>(options => {
options.FileProviders.Add(new MyCostumizedFileProvider());
});
Run Code Online (Sandbox Code Playgroud)
错误总是:
/Pages/Shared/ViewListPerson_1b2b2019-aad9-4096-a3b7-ece5dfe586c1.cshtml
at Microsoft.AspNetCore.Mvc.ViewEngines.ViewEngineResult.EnsureSuccessful(IEnumerable`1 originalLocations)
at Microsoft.AspNetCore.Mvc.ViewFeatures.ViewResultExecutor.ExecuteAsync(ActionContext context, ViewResult result)
at Microsoft.AspNetCore.Mvc.ViewResult.ExecuteResultAsync(ActionContext context)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeNextResultFilterAsync>g__Awaited|29_0[TFilter,TFilterAsync](ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Rethrow(ResultExecutedContextSealed context)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.ResultNext[TFilter,TFilterAsync](State& next, Scope& scope, Object& state, …Run Code Online (Sandbox Code Playgroud) asp.net-core ×3
asp.net-mvc ×2
razor ×2
.net-6.0 ×1
.net-core ×1
c# ×1
css ×1
fileprovider ×1
hot-reload ×1
master-pages ×1
rider ×1