razor-pages 相关问题

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

Razor页面与ASP.NET Core MVC结合存在路由问题

我是 Razor 页面和所有 ASP.NET Core 的新手,所以很可能是我的无知...... 我正在开发 ASP.NET Core 7 Web 应用程序。最初我从 MVC 项目模板开始,然后...

回答 1 投票 0

Razor Pages 与 MVC 结合存在路由问题

我是 Razor Pages 和所有 ASP.NET Core 的新手,所以很可能是我的无知...... 我正在开发 ASP.NET Core 7 Web 应用程序。最初我是从MVC项目模板开始的,然后添加了

回答 1 投票 0

在 ASP.NET Core Razor 页面中使用 Tailwind,我可以在 calc() 中使用 @model 吗?

这是我的问题。我正在使用 Razor 页面和 Tailwind。我想在 tailwind 语法中使用 @model 表达式。这样我就摆脱了switch case结构。看来有效果了

回答 1 投票 0

DataTable 未显示 AJAX 接收的数据

我目前正在学习如何使用 .NETCore 6 Razor Pages 将 AJAX 接收的数据显示到 DataTables。这是前端代码: 我目前正在学习如何使用 .NETCore 6 Razor Pages 将 AJAX 接收的数据显示到 DataTables。这是前端代码:<table id="dataTable" class="table table-striped" style="width:100%"> <thead> <tr> <th hidden>Id</th> //I want the id column to be hidden; all SQL tables have the same 4 columns <th>Region</th> <th>Daily Range Minimum</th> <th>Daily Range Maximum</th> </tr> </thead> <tbody> @foreach (var row in Model.Client) { <tr> <td hidden>@row.Id</td> <td>@row.Region</td> <td>@row.range1</td> <td>@row.range2</td> </tr> } </tbody> </table> <script> var dataTable, headers; $(document).ready(function () { dataTable = $('#dataTable').DataTable(); $('.button-container button').on('click', function (event) { event.preventDefault(); var buttonId = $(this).attr('id'); fetchDataForButton(buttonId); }); }); // Function to handle data retrieval based on the button id function fetchDataForButton(buttonId) { $.ajax({ type: 'POST', headers: { RequestVerificationToken: $('input:hidden[name="__RequestVerificationToken"]').val() }, url: '/wagetable?handler=CollectData', dataSrc: '', data: { buttonId: buttonId }, success: function (response) { console.log("Success callback reached"); console.log("Data received:", response); //Destroy previous DataTable if exists if ($.fn.DataTable.isDataTable('#dataTable')) { $('#dataTable').DataTable().destroy(); } // Clear the existing headers $('#dataTable thead').empty(); // Add the new headers var headers = getHeadersForButton(buttonId); var headerRow = $('<tr>'); headers.forEach(function (header) { headerRow.append($('<th>').text(header)); }); $('#dataTable thead').append(headerRow); // Add the new data to the DataTable dataTable.clear().rows.add(response).draw(); }, error: function (error) { console.error("Error fetching data: ", error); // Handle error as needed } }); } // Function to get headers based on the buttonId function getHeadersForButton(buttonId) { // Implement logic to retrieve headers based on the buttonId // Example: switch (buttonId) { case 'btnSSS': return ['Monthly Range Minimum', 'Monthly Range Maximum', 'Monthly Credit']; case 'btnIndustry': return ['Industry', 'Monthly Range Minimum', 'Monthly Range Maximum']; case 'btnRegion': return ['Region', 'Range1', 'Range2']; // Add cases for other buttonIds default: return []; } } </script> 单击按钮时,AJAX 会将按钮 id 发送到模型页面中处理数据检索的函数。这是后端代码:public IActionResult OnPostCollectData(string buttonId) { IEnumerable<object> data = null; // Call the appropriate SQL function based on the buttonId switch (buttonId) { case "btnSSS": data = employeeRepository.GetAllRanges(); // All are SQL functions that retrieve data from SQL tables break; case "btnIndustry": data = employeeRepository.GetAllIndustries(); break; case "btnRegion": data = employeeRepository.GetAllRegions(); break; // Add cases for other buttonIds default: break; } try { Console.WriteLine($"OnPostCollectData called for buttonId: {buttonId}"); return new JsonResult(new { Data = data }); } catch (Exception ex) { Logger.LogError(ex, "An error occurred while processing the OnPostGetData request."); return BadRequest(new { ErrorMessage = "An error occurred. Please check the logs for more details." }); } } 尝试过的问题和解决方案问题是数据没有显示;表格标题已成功显示,但表格单元格值未显示。我注意到了: 控制台中没有 Javascript 错误 “response”变量不为 null 或为空;在控制台日志中,接收到的数据正确显示为表行值数组 在 dataTable = $('#dataTable').DataTable(); 之后再次调用 dataTable.clear().rows.add(response).draw(); 会导致列计数错误。我认为这是因为它是多余的? 如有任何帮助,我们将不胜感激。 您的 API 将返回响应,该响应是包含 Data 数组的单个对象。 rows.add()需要一个数组来将多行插入到DataTable中。 dataTable.clear().rows.add(response.Data).draw(); 由于您已经销毁了 DataTable,因此在将响应数据添加到数组之前,您需要创建/重新初始化 DataTable 实例。您还应该提供基于响应中字段的列,如下所示: dataTable = $('#dataTable').DataTable( { columns: [ { data: 'Monthly Range Minimum' }, { data: 'Monthly Range Maximum' }, { data: 'Monthly Credit' } ] } ); 还建议清空 <tbody> 元素,因为这可能会在实例化 DataTable 并添加行时导致问题。 完整代码: //Destroy previous DataTable if exists if ($.fn.DataTable.isDataTable('#dataTable')) { $('#dataTable').DataTable().destroy(); } // Clear the existing headers $('#dataTable thead').empty(); // Clear tbody $('#dataTable tbody').empty(); // Add the new headers var headers = getHeadersForButton(buttonId); var headerRow = $('<tr>'); headers.forEach(function(header) { headerRow.append($('<th>').text(header)); }); $('#dataTable thead').append(headerRow); dataTable = $('#dataTable').DataTable( { columns: [ { data: 'Monthly Range Minimum' }, { data: 'Monthly Range Maximum' }, { data: 'Monthly Credit' } ] } ); // Add the new data to the DataTable dataTable.clear().rows.add(response.Data).draw(); 演示@JSFiddle

回答 1 投票 0

.NET Core ChangeTracker 返回无效值

我正在重写 12 年前使用 ASP.NET v4 和 SQL Server 2014 编写的应用程序,并且我正在使用 ASP.NET Core v6 Razor 和 SQL Server 2019,是的,我需要使用 v6,因为

回答 1 投票 0

如何从 Razor Pages 中的 .NET 7 中的链接获取 ID?

当我打开链接中包含 id 的页面时,浏览器中出现错误。我有一个假设,通过这种方式它指的是某种端点,但我不明白如何做到这一点以便我可以获得 ID...

回答 1 投票 0

ASP.NET Core:Razor:将 QueryString 按原样发送到 Razor 处理程序

我有一个名为 OnPostDisplay 的剃刀处理程序,它接受一些 [FromQuery] 参数和一个 [FromBody] 参数。如何在 ajax 请求中形成对此处理程序的 URL? 我想要实现的目标...

回答 1 投票 0

将数组从 datatables.net JavaScript 传递到 asp.net Razor 页面

我正在使用 Visual Studio 2022 asp.net Razor 页面项目,并尝试将所选记录的 DataTables.net 表中的数组传递回 .cshtml.cs OnPostRemove。看起来该数组是...

回答 1 投票 0

在 ASP.NET Core 中使用音频控件从十六进制字符串播放音频

我想向我的 ASP.NET Core 代码添加音频控件。当我将控件的源设置为文件时,它可以工作。 现在我从数据库中检索了十六进制字符串形式的音频,我想要......

回答 1 投票 0

将数据从一个 Razor 页面传递到另一个 Razor 页面

我需要一些帮助。我以前没有这样做过,而且我不完全确定在哪里添加什么。基本上,我正在开发一个用于存储历史数据的应用程序。无法创建、编辑或删除

回答 1 投票 0

脚手架 Razor 创建页面不添加项目

我通过脚手架为以下模型创建了一个“创建”剃刀页面: 公开课产品 { [钥匙] [数据库生成(数据库生成选项.Identity)] 公共int产品...

回答 1 投票 0

为什么 onclick 事件在 .net 7.0 中的 razor 页面托管 blazor 组件中不起作用?

此代码在使用 .net 5.0 和 .net 6.0 嵌入 Razor Pages 页面的 blazor Web 程序集中运行良好。 我必须通过更改 razor 页面中的框架来升级到 .net 7.0,并且

回答 2 投票 0

标签帮助程序中的 AJAX 调用未到达 .net 7 中引用的项目控制器

`我正在开发一个 ASP.NET Core razor 页面应用程序,其中使用来自单独项目的自定义标记助手。这些标签助手对我的主项目中的各种控制器进行 AJAX 调用。然而,...

回答 1 投票 0

由于安全问题,Razor JavaScript Interop 不会“window.close()”

我有一个剃刀页面,其中有一个用于使用 window.close() 关闭浏览器窗口的按钮,并且在应用程序启动时它在初始浏览器窗口中工作正常,因为根据文档,您可以

回答 1 投票 0

使用生产环境调试我的应用程序的快速方法

默认情况下,ASP.NET Core 应用程序在 Visual Studio 中运行时在开发环境中运行。我需要调试生产环境。之间切换最简单的方法是什么

回答 1 投票 0

ASP.NET Core 的 BindNever 不适用于记录

使用 Razor Pages 7 时,我在代码隐藏文件中包含以下内容: 公共记录 PersonDto( 长身份证, 字符串名称, [BindNever] 字符串地址, // ... ); [BindProperty] public PersonDto Person { ...

回答 2 投票 0

CRUD Razor 脚手架页面未设置样式

创建实体模型并生成迁移后,我为其中一个实体制作了 CRUD 脚手架,但页面根本没有样式,并且所有链接都不起作用,我添加了

回答 1 投票 0

.NET Razor 页面,回发时清除范围依赖注入属性

我正在尝试在我的 Razor 页面项目上实现持久存储。我需要的是,在我的页面回发时,属性值不应被清除。我正在通过依赖注入来做到这一点...

回答 1 投票 0

Asp.net core如何在没有ajax调用的情况下获取razor页面中的json值

我从服务器端收到一个 json 字符串,我想访问它的值。 Ajax 调用不会接收该字符串,我希望在 Razor Page 中获取它的值。 上图中,两个值,

回答 1 投票 0

DataType 和 Range 数据注释不会本地化错误消息

我不明白为什么在 asp.net 7.0 razor 页面应用程序中,数据注释错误消息的本地化适用于除“DataType”属性之外的所有属性,其中...

回答 1 投票 0

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