razor-pages 相关问题

适用于与Razor Pages相关的问题,这是从ASP.NET Core 2.0开始的ASP.NET Core的一个功能。

Azure AD Microsoft 帐户客户端是公开的,因此不应显示“client_assertion”和“client_secret”

我遇到以下问题: 异常:OAuth 令牌端点失败:状态: 正文:{“error”:“invalid_client”,“error_description”:“AADSTS700025:客户端是p...

回答 2 投票 0

为什么显示没有选择文件或没有项目导入使用剃刀页面?

如何修改代码以使用复选框并仅针对选定的项目调用 PrintCartonLabel?可以在选择项目后添加复选框并单击打印按钮,然后显示无...

回答 1 投票 0

如何在razor页面身份中将RedirectToPage更改为ChangePassword

我无法对 Razor Pages 应用程序中身份文件夹中的任何页面使用 RedirectToPage。 如果我使用: return RedirectToPage("/Identity/Account/Manage/ChangePassword"); 我得到的是...

回答 2 投票 0

无法在 Razor 页面中保存

我有一个代码可以检索以前保存的发票数据,还有一个代码可以在更改价格或数量后再次保存它。问题是,当我按下保存按钮时,没有任何反应,没有消息

回答 1 投票 0

ASP.NET Core Razor 页面登陆索引页面而不是登录页面

我使用 ASP.NET Core 创建了一个 Razor Pages 应用程序。我的起始页面应该是我使用 ASP.NET Core 身份验证创建的登录页面。当我构建和测试时,一切都按预期工作......

回答 1 投票 0

400 从 Htmx 发布到 .Net Razor 页面的错误请求

我已经退出 FE 游戏有一段时间了,大约 4-5 年前,我专门从事 .Net 后端 API 开发,所以请原谅我,如果这是一个简单的项目,但它是一个使用 Razor Pages 和 H 的项目...

回答 1 投票 0

使用 POST 的 Javascript Fetch 始终返回状态 400

只需遵循 ChatGTP 和 Google 中的所有示例,但我第一次使用带有 POST 的 javascript fetch 总是返回 400。(我使用 GET 进行 fetch 工作正常,所以我不明白为什么 POST fa...

回答 1 投票 0

Asp.Net Core 禁用/删除特定 Razor 页面

我有一个Asp.Net Core Razor Pages项目,我已经实现了一系列剃刀页面,其中一些,但目前我想“禁用/删除它们”,以便它们不可用...

回答 1 投票 0

我可以区分 ErrorMessage 和 Razor 页面中显示的错误文本吗

我有 Web 表单背景,并尝试学习 Razor 页面。在 Web 窗体中,我非常广泛地使用 asp:Validation 控件。这些验证控件使我可以选择指定...

回答 1 投票 0

ASP.NET Core MVC 8 DateTime 模型验证始终无效

我正在开发从 ASP.NET Core 3.1 版本到 ASP.NET Core MVC 8 的迁移项目。 一些软件包仍然是 3.1 版本: Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore 微软.AspNetCo...

回答 1 投票 0

如何使此 URL 模式在 ASP.NET Core 中可接受?

我正在使用 Razor 页面的 ASP.NET Core 项目中工作,我正在尝试制作此 URL 模式 /{客户名称}/表单/{页面} 可以接受的路线。您应该知道我使用的是 Razor Pages 而不是 MVC。

回答 1 投票 0

尝试在 Razor Pages 中添加支架项目时出错

我一直在尝试使用Entity Frameword(CRUD)在ASP.NET Core、razor页面中添加一个脚手架项。我当前的目标框架是netcoreapp3.1。 我有以下软件包版本: 包括=&...

回答 3 投票 0

Asp.net Core Razor 页面 - 自定义 TagHelpers 和样板 CRUD 代码

我确信这个问题以前已经遇到过很多次了。 我有很多 CRUD 表单,所以我有很多重复的样板代码。 例如 我确信这个问题以前已经遇到过很多次了。 我有很多 CRUD 表单,所以我有很多重复的样板代码。 例如 <div class="form-group"> <label asp-for="MyModel.Property1" class="control-label"></label> <input asp-for="MyModel.Property1" class="form-control" /> <span asp-validation-for="MyModel.Property1" class="text-danger"></span> </div> 上述代码针对每个属性、每个表单一次又一次地重复。看起来总是一样的(例如,如果它是一个下拉菜单)。 我已经成功地使用 EditorTemplates 获得了可重复运行的东西,但这感觉很笨拙。我需要每个属性类型等不同的模板。 这需要运行: @Html.EditorFor(m => m.MyModel.Property1, "_MyString") 我觉得@Html。在 Razor Pages 中几乎不鼓励,解决方案应该在其他地方。 我花了太长时间寻找自定义 TagHelper 设置和工作,但我认为这是不可能的。您可以创建自己的 TagHelpers 并使用 TagBuilder,但是您会丢失 InputTagHelper 等内部的所有逻辑。 https://github.com/dotnet/aspnetcore/blob/main/src/Mvc/Mvc.TagHelpers/src/InputTagHelper.cs 它需要利用输入和标签标签助手,因为有很多逻辑,例如根据上面的链接,输入标签助手中的属性类型。您似乎无法使用这些。 我正在寻找一种真正通用的方法来减少我的样板代码,并希望可能有灵丹妙药? 编辑说 - 您过去也可以在 MVC 中执行此操作,但您无法通过 Razor Pages 执行此操作,而无需创建每个模型。 public static IHtmlContent MyEditorFor<TModel, TResult>( this IHtmlHelper<TModel> htmlHelper, Expression<Func<TModel, TResult>> expression, string templateName = "MyDefaultTemplateName") { return htmlHelper.EditorFor(expression, templateName); } 这是您可以遵循的完整工作演示: 创建自定义标签助手 [HtmlTargetElement("div-group", Attributes = "asp-for")] public class DivGroupTagHelper : TagHelper { private const string ForAttributeName = "asp-for"; private IHtmlGenerator _htmlGenerator; public DivGroupTagHelper(IHtmlGenerator htmlGenerator) { _htmlGenerator = htmlGenerator; } [HtmlAttributeName(ForAttributeName)] public ModelExpression For { get; set; } [HtmlAttributeName("class")] public string CssClass { get; set; } [HtmlAttributeName("label-class")] public string LabelCssClass { get; set; } [HtmlAttributeName("input-class")] public string InputCssClass { get; set; } [HtmlAttributeName("validation-class")] public string ValidationCssClass { get; set; } [HtmlAttributeNotBound] [ViewContext] public ViewContext ViewContext { get; set; } public override async Task ProcessAsync(TagHelperContext context, TagHelperOutput output) { output.TagName = "div"; output.Attributes.SetAttribute("class", "form-group " + CssClass); // Create a context and output for the label var labelContext = new TagHelperContext(new TagHelperAttributeList(), new Dictionary<object, object>(), Guid.NewGuid().ToString("N")); var labelOutput = new TagHelperOutput("label", new TagHelperAttributeList(), (useCachedResult, encoder) => Task.FromResult<TagHelperContent>(new DefaultTagHelperContent())); var labelTagHelper = new LabelTagHelper(_htmlGenerator) { For = For, ViewContext = ViewContext }; await labelTagHelper.ProcessAsync(labelContext, labelOutput); labelOutput.AddClass("control-label", HtmlEncoder.Default); if (!string.IsNullOrEmpty(LabelCssClass)) labelOutput.AddClass(LabelCssClass, HtmlEncoder.Default); //Create a context and output for the input var inputContext = new TagHelperContext(new TagHelperAttributeList(), new Dictionary<object, object>(), Guid.NewGuid().ToString("N")); var inputOutput = new TagHelperOutput("input", new TagHelperAttributeList(), (useCachedResult, encoder) => Task.FromResult<TagHelperContent>(new DefaultTagHelperContent())); var inputTagHelper = new InputTagHelper(_htmlGenerator) { For = For, ViewContext = ViewContext }; await inputTagHelper.ProcessAsync(inputContext, inputOutput); inputOutput.AddClass("form-control", HtmlEncoder.Default); if (!string.IsNullOrEmpty(InputCssClass)) inputOutput.AddClass(InputCssClass, HtmlEncoder.Default); // Create a context and output for the validation message var validationContext = new TagHelperContext(new TagHelperAttributeList(), new Dictionary<object, object>(), Guid.NewGuid().ToString("N")); var validationOutput = new TagHelperOutput("span", new TagHelperAttributeList(), (useCachedResult, encoder) => Task.FromResult<TagHelperContent>(new DefaultTagHelperContent())); var validationTagHelper = new ValidationMessageTagHelper(_htmlGenerator) { For = For, ViewContext = ViewContext }; await validationTagHelper.ProcessAsync(validationContext, validationOutput); validationOutput.AddClass("text-danger", HtmlEncoder.Default); if (!string.IsNullOrEmpty(ValidationCssClass)) validationOutput.AddClass(ValidationCssClass, HtmlEncoder.Default); // Append the generated content to the output output.Content.AppendHtml(labelOutput); output.Content.AppendHtml(inputOutput); output.Content.AppendHtml(validationOutput); } } 在您的 _ViewImports.cshtml 文件中添加 Tag Helper 注册 @addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers @addTagHelper *, YourNamespace 在 Razor 页面中使用自定义标签帮助程序 @page @model IndexModel <form method="post"> <div-group asp-for="Password"></div-group> <div-group asp-for="Email"></div-group> <input type="submit" value="Create"/> </form> @section Scripts { <partial name="_ValidationScriptsPartial" /> }

回答 1 投票 0

将元素从 Blazor 中的子页面返回分配给 MainLayout 组件

以blazor wasm项目的标准结构为例,MainLayout组件和razor页面由@page指令表示,也就是说,基本上我需要渲染一个元素

回答 1 投票 0

是否可以将值从 Razor 组件传递到 Razor 页面?

我正在将 Razor 组件集成到 Blazor Web assembly 项目中的 ASP.NET Core Razor 页面中,以保持客户端和服务器之间的 UI 一致。 这些组件之一是多...

回答 1 投票 0

ASP.NET [PageRemote] 无法与类一起使用。为什么?

这是带有 ASP.NET 身份注册页面 (.NET 8) 的 ASP.NET Razor 页面项目。 电子邮件检查 (PageRemote) 工作正常,但前提是 Email 属性不是 Input 类的成员 (

回答 1 投票 0

ASP.net core 5.0 Razor 页面重定向到新 IP

我正在开发基于 Razor Pages 的 Asp.net core 5.0 Web 服务器。 该网站托管一个配置页面,用户可以在其中更改当前服务器 IP,即

回答 1 投票 0

如何更新记录并返回筛选索引页

我有一个 Copy.cshtml 页面,它复制现有记录并允许用户基于现有记录创建新记录。通过创建新记录并返回索引,效果很好。

回答 1 投票 0

ASP.NET Core 8.0 Razor 页面:重写 _Layout.cshtml.css => {application}.styles.css 未找到 (404)

创建新的 .NET8.0 Razor Pages (ASP.NET Core) 项目后,我删除了 JQuery 和 Bootstrap 库。然后我编辑了_Layout.cshtml.css。运行项目时,我的 CSS 规则没有应用,b...

回答 1 投票 0

按下按钮时从剃须刀页面调用 API

我有一个使用 asp.net 的 razor 页面服务器,我需要通过按下按钮来调用 api,我为此苦苦挣扎的时间比我愿意承认的要长,所以我只想给你代码。 ..

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.