asp.net-mvc 相关问题

ASP.NET MVC框架是一个开源Web应用程序框架和工具,它实现了针对Web应用程序定制的模型 - 视图 - 控制器(MVC)模式的版本,并构建在ASP.NET技术基础之上。

如何在ASP.NET Core MVC中实现ASP.NET MVC Server.Transfer同样的效果?

我对这种迁移很陌生。请帮助我! TransferResult:从 ASP.NET MVC 迁移时,ASP.NET Core 8.0 MVC 是否需要此功能? (基于马库斯·奥尔森的回答) 如果是的话,如何改变...

回答 1 投票 0

验证 .NET Core Identity 中的 ASP.NET Core EF Identity 用户

我编写了一个 ASP.NET Core 8.0 Web API 项目,该项目使用旧版 ASP.NET MVC 项目(在 .NET 4.6 上)的数据库。 我已经成功连接了身份框架,并且我正在拉...

回答 1 投票 0

更改特定角色用户的默认登录页面

如何更改属于某些角色的用户(假设为“管理员”)的登录页面。 更具体地说,当角色“管理员”的用户访问应用程序站点时(...

回答 1 投票 0

无法从 NuGet 安装 Microsoft.AspNet.WebApi.Cors

我刚刚将我的项目从 2010 年的 Visual Studio 升级到 2013 年,以支持我的 WebApi 中的跨源资源共享 (CORS)。 现在,当我从 NuGe 安装 Microsoft.AspNet.WebApi.Cors 包时...

回答 5 投票 0

如何在 ASP.NET MVC 中获取客户端的 IP 地址?

我对 ASP.NET MVC 堆栈完全陌生,我想知道简单的 Page 对象和 Request ServerVariables 对象发生了什么? 基本上,我想拉出客户端PC的IP广告...

回答 7 投票 0

EPPlus - .NET - 在 Excel 包中加载时保留 VBA 项目

我正在加载现有的xlsm(启用宏)文件,用数据填充它,并输出要由用户下载的流。 当我这样做时,Excel 说“无法打开文件,因为...

回答 1 投票 0

为.net Core 8中的2个区域设置cookie

我有一个项目。我设计了2个区域。一份用于我网站的用户,一份用于管理面板。客户必须登录,管理员用户也必须登录。我不希望任何人进入该网站或...

回答 1 投票 0

Azure Pipelin:如何以正常文件结构发布 ASP.NET MVC 应用程序

我有一个包含多个项目的解决方案。我想获取(在工件中)项目 UserUi.csproj,它是一个 ASP.NET MVC 应用程序(引用解决方案中的其他库),准备好...

回答 1 投票 0

临时目录中自动生成的“App_Web********.cs”文件导致构建错误

所以这已经困扰我一段时间了,但有时在我的 Visual Studio 2013 ASP.NET MVC4 项目中,我会删除一个未使用的 ViewModel 类,并且在下一次编译时会出现一个错误,看起来...

回答 9 投票 0

更新数据库时出现 ASP.NET Code-First(实体框架)错误

我就直接进入正题了。 我实际上正在尝试在这里学习 C# asp.net mvc 模式,并且我正在使用实体框架代码优先方法,但是当我尝试输入更新数据时...

回答 3 投票 0

使用 AddSync 保存更改

我是 C# 的初学者,我在代码中遇到问题,我使用 Edit 方法作为索引,所以我使用 AddAsync,但是当我运行代码时它只是跳过该行,而且它也没有保存...

回答 1 投票 0

如何在模式对话框中显示完整日历

我正在尝试在模式对话框中显示 FullCalendar。可以在 div 元素内查看完整的日历。但我想在模式对话框中显示它。 这是代码: 我正在尝试在模式对话框中显示 FullCalendar。可以在 div 元素内查看完整的日历。但我想在模式对话框中显示它。 这是代码: <button type="button" class="btn btn-primary" onclick="getCalendarEvents()">Depot Calendar</button> <div class="row"> <div class="att-area" id="empcalendar"> </div> </div> <script> var empevents = []; function getCalendarEvents(empevents) { $('#empcalendar').fullCalendar('destroy'); $('#empcalendar').fullCalendar({ defaultView: 'month', handleWindowResize: true, header: { left: 'prev,next today', center: 'title', right: 'month,basicWeek,basicDay,agenda' }, eventLimit: true, events: empevents }); } </script> empevents数组显示数据如下 {empid: 159, title: 'XXXXX - UnPaid', start: Tue Jan 02 2024 00:00:00 GMT+0000 (Greenwich Mean Time), end: Tue Jan 02 2024 00:00:00 GMT+0000 (Greenwich Mean Time), allDay: true} {empid: 9, title: 'YYY - UnPaid', start: Tue Jan 02 2024 00:00:00 GMT+0000 (Greenwich Mean Time), end: Tue Jan 02 2024 00:00:00 GMT+0000 (Greenwich Mean Time), allDay: true} 有关如何在模式对话框中显示完整日历,您可以遵循以下工作演示: <button type="button" class="btn btn-primary" onclick="showCalendarModal()">Depot Calendar</button> <!-- Modal Structure --> <div class="modal fade" id="calendarModal" tabindex="-1" role="dialog" aria-labelledby="calendarModalLabel" aria-hidden="true"> <div class="modal-dialog modal-lg" role="document"> <div class="modal-content"> <div class="modal-header"> <h5 class="modal-title" id="calendarModalLabel">Depot Calendar</h5> <button type="button" class="close" data-dismiss="modal" aria-label="Close"> <span aria-hidden="true">&times;</span> </button> </div> <div class="modal-body"> <div id="empcalendar"></div> <!-- Calendar container --> </div> <div class="modal-footer"> <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button> </div> </div> </div> </div> <link rel="stylesheet" href="~/lib/bootstrap/dist/css/bootstrap.min.css" /> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/fullcalendar/3.10.2/fullcalendar.min.css" /> <script src="~/lib/jquery/dist/jquery.min.js"></script> <script src="~/lib/bootstrap/dist/js/bootstrap.bundle.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.27.0/moment.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/fullcalendar/3.10.2/fullcalendar.min.js"></script> <script> // Array of events to be displayed in the calendar var empevents = [ { empid: 159, title: 'XXXXX - UnPaid', start: '2024-01-02', end: '2024-01-02', allDay: true }, { empid: 9, title: 'YYY - UnPaid', start: '2024-01-02', end: '2024-01-02', allDay: true } ]; // Function to show the modal and initialize FullCalendar function showCalendarModal() { $('#calendarModal').modal('show'); // Show the modal } // When the modal is shown, initialize or refresh the FullCalendar $('#calendarModal').on('shown.bs.modal', function () { initializeCalendar(empevents); }); // Function to initialize or refresh FullCalendar function initializeCalendar(events) { $('#empcalendar').fullCalendar('destroy'); // Destroy any existing calendar instance $('#empcalendar').fullCalendar({ defaultView: 'month', handleWindowResize: true, header: { left: 'prev,next today', center: 'title', right: 'month,basicWeek,basicDay' }, eventLimit: true, events: events // Pass the events data to the calendar }); } // Function to dynamically update the calendar events if you need function getCalendarEvents(newEvents) { empevents = newEvents; initializeCalendar(empevents); } </script>

回答 1 投票 0

Bootstrap 和 Font Awesome 图标未出现

我的 _layout 中有这段代码,它会按照我想要的方式呈现我想要的内容。 现在,在我的不同视图中(请参阅第二个代码片段),我尝试使用 Bootstrap 或 Font Awesome 插入一些图标,但不是......

回答 1 投票 0

在 MVC c# 中分页浏览数据集而不获取新数据集

我的页面上有 3 个不同的功能。 1.) 搜索,2.) 排序和 3.) 分页 我已经完成了所有这些工作,但我想知道是否有人知道如何操作,或者可以向我指出如何保存的地方,...

回答 1 投票 0

MVC .NET Framework 中的分页不起作用,如何让它工作

我尝试使用实体框架将旧的 asp.net webforms 应用程序转换为 MVC 应用程序。我使用scaffold-DbContect 命令生成了该应用程序的模型,该命令是...

回答 1 投票 0

.Net Core 2.1 中的分页器

我已经从 NuGet Link 添加了 ReflectionIT.Mvc.Paging 但我遇到了问题。 在控制器中,我有两种方法:索引和组织。当我在组织视图中并按带有 num 的页面时...

回答 1 投票 0

MVC 增删改查操作,分页并在更新第 2,3..n 页上的记录后保留同一页面

(使用另一个视图进行编辑)[非部分视图]。单击“保存”后...应打开同一页面,其中包含已更新的记录而不是第一页。 控制中的索引方法...

回答 1 投票 0

webgrid 中的分页在 asp.net mvc 5 中不起作用

我有以下视图和控制器。问题是,当启用分页并单击下一页时,上一个视图消失了 @使用系统 @使用System.Web.Helpers @*@型号列表 我有以下视图和控制器。问题是,当启用分页并单击下一页时,上一个视图消失了 @using System @using System.Web.Helpers @*@model List<DataTransferObjects.UserClaimHistory>*@ <!DOCTYPE html> <html lang="en"> <head runat="server"> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link href="~/Content/style.css" rel="stylesheet" type="text/css" /> @*<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>*@ <script src="~/Scripts/jquery-1.7.1.js"></script> <style> /*Here I will write some css for looks good*/ th, td { padding: 5px; } th { background-color: gray; } </style> </head> @{ ViewBag.Title = "ViewReports"; var grid = new WebGrid(Model, canPage: false, rowsPerPage: 2, selectionFieldName: "selectedRow", ajaxUpdateContainerId: "gridContent", canSort: false); } @{ var fromDateVal = (DateTime)ViewBag.fromDate; var toDateVal = (DateTime)ViewBag.toDate; } @using (Html.BeginForm("Index", "ViewReport", FormMethod.Post)) { <div class="container"> @{ var homeHeader = Html.Partial("_HomeHeader"); } @homeHeader <div id="logout-div"> @Html.ActionLink("Log Out", "Logout", "Home", null, null ) </div> @{ var homeLeftPanel = Html.Partial("_HomeLeftPanel"); } @homeLeftPanel <div> From Date: @Html.TextBox("fromDate", string.Format("{0:yyyy-MM-dd}", fromDateVal), new { @id = "fromDate", @class = "datefield", type = "date" }) To Date: @Html.TextBox("toDate", string.Format("{0:yyyy-MM-dd}", toDateVal), new { @id = "toDate", @class = "datefield", type = "date" }) <input type="submit" value="Search" /> </div> <div id="main" style="padding: 25px;"> @grid.GetHtml( htmlAttributes: new { id = "MainGrid", width = "60%" }, tableStyle: "table table-bordered table-responsive", headerStyle: "header", alternatingRowStyle: "alt", selectedRowStyle: "select", columns: grid.Columns( grid.Column("UserName", "User Name"), grid.Column("Email", "Email"), grid.Column("Claim", "Accessed"), grid.Column(header: "AccessedOn", format: (item) => string.Format("{0:dd-MM-yyyy}", item.AccessedOn)), grid.Column(format: (item) => { if (item.Count > 1) { var subGrid = new WebGrid(source: item.List, canSort: false); return subGrid.GetHtml(displayHeader: true, htmlAttributes: new { id = "SubGrid", width = "100%" }, columns: subGrid.Columns( subGrid.Column("UserName", "User Name"), subGrid.Column("Email", "Email"), subGrid.Column("Claim", "Accessed"), subGrid.Column("AccessedOn", "AccessedOn") ) ); } else { return null; } }) ) ) <script> $(document).ready(function () { var size = $("#main #MainGrid > thead > tr > th").size(); // get total column $("#main #MainGrid > thead > tr > th").last().remove(); // remove last column $("#main #MainGrid > thead > tr").prepend("<th></th>"); // add one column at first for collapsible column $("#main #MainGrid > tbody > tr").each(function (i, el) { $(this).prepend( $("<td></td>") .addClass("expand") .addClass("hoverEff") .attr('title', "click for show/hide") ); //Now get sub table from last column and add this to the next new added row var table = $("table", this).parent().html(); // // alert(table); //add new row with this subtable // ADD CLICK EVENT FOR MAKE COLLAPSIBLE if (table !== null) { $(this).after("<tr><td></td><td style='padding:5px; margin:0px;' colspan='" + (size - 1) + "'>" + table + "</td></tr>"); $("table", this).parent().remove(); $(".hoverEff", this).live("click", function () { $(this).parent().closest("tr").next().slideToggle(100); $(this).toggleClass("expand collapse"); }); } else { $(this).find('td:eq(0)').removeClass(); } }); //by default make all subgrid in collapse mode $("#main #MainGrid > tbody > tr td.expand").each(function (i, el) { $(this).toggleClass("expand collapse"); $(this).parent().closest("tr").next().slideToggle(100); }); }); </script> </div> @if (ViewBag.Count > 0) { <div> @Html.ActionLink("Export", "ExportToExcel", "ViewReport", new { fromDate = fromDateVal, toDate = toDateVal}, null) </div> } @{ var homeFooter = Html.Partial("_HomeFooter"); } @homeFooter </div> } </html> 这是控制器: public ActionResult Index(DateTime? fromDate, DateTime? toDate) { if (!fromDate.HasValue) fromDate = DateTime.Now.Date; if (!toDate.HasValue) toDate = fromDate.GetValueOrDefault(DateTime.Now.Date).Date.AddDays(1); if (toDate < fromDate) toDate = fromDate.GetValueOrDefault(DateTime.Now.Date).Date.AddDays(1); ViewBag.fromDate = fromDate; ViewBag.toDate = toDate; var userClaims = DbAccessWebApiHandler.GetUserClaimAccesshistory(new DateSelection { StartDate = fromDate.Value, EndDate = toDate.Value }); if (userClaims != null) { ViewBag.Count = userClaims.Count; var newList = userClaims.GroupBy(x => new { x.UserName, x.Email, x.Claim, x.AccessedOn.Date }) .Select(y => new UserClaimHistoryGroup { UserName = y.Key.UserName, Email = y.Key.Email, Claim = y.Key.Claim, AccessedOn = y.Key.Date, List = y.ToList(), Count = y.ToList().Count }); return View(newList); } userClaims = new List<UserClaimHistory>(); return View(userClaims); } [System.Web.Mvc.HttpGet] public ActionResult ExportToExcel(DateTime? fromDate, DateTime? toDate) { if (!fromDate.HasValue) fromDate = DateTime.Now.Date; if (!toDate.HasValue) toDate = fromDate.GetValueOrDefault(DateTime.Now.Date).Date.AddDays(1); if (toDate < fromDate) toDate = fromDate.GetValueOrDefault(DateTime.Now.Date).Date.AddDays(1); ViewBag.fromDate = fromDate; ViewBag.toDate = toDate; var userClaims = DbAccessWebApiHandler.GetUserClaimAccesshistory(new DateSelection { StartDate = fromDate.Value, EndDate = toDate.Value }); if (userClaims != null) { var gv = new GridView(); gv.AutoGenerateColumns = false; gv.Columns.Add(new BoundField { HeaderText = "UserName", DataField = "UserName" }); gv.Columns.Add(new BoundField { HeaderText = "Email", DataField = "Email" }); gv.Columns.Add(new BoundField { HeaderText = "Accessed", DataField = "Claim" }); gv.Columns.Add(new BoundField { HeaderText = "Date", DataField = "AccessedOn" }); var dt = new DataTable(); dt.Columns.Add("UserName"); dt.Columns.Add("Email"); dt.Columns.Add("Claim"); dt.Columns.Add("AccessedOn"); foreach (var item in userClaims) { dt.Rows.Add(item.UserName, item.Email, item.Claim, item.AccessedOn); } gv.DataSource = dt; gv.DataBind(); for (var i = 0; i < userClaims.Count; i++) { gv.Rows[i].Height = 40; } Response.ClearContent(); Response.Buffer = true; Response.AddHeader("content-disposition", "attachment; filename=Reports.xls"); Response.ContentType = "application/ms-excel"; Response.Charset = ""; var sw = new StringWriter(); var htw = new HtmlTextWriter(sw); gv.RenderControl(htw); Response.Output.Write(sw.ToString()); Response.Flush(); Response.End(); } return View("Index"); } 能够通过以下脚本工作 var links = $('a[href*=page], a[href*=sort]'), form = $('form'); links.click(function () { form.attr("action", this.href); $(this).attr("href","javascript:"); form.submit(); }); 如在 MVC4 站点中进行排序或分页操作期间如何让 WebGrid 以 POST 而不是 GET 方式进行操作?

回答 1 投票 0

PagedList.Mvc 返回表中的所有记录

我的通用存储库中有以下功能。我对 var list = query.ToPagedList(pageNumber, pageSizeNumber); 行有两个问题 公共 IEnumerable GetPagedListDbContext(字符串

回答 1 投票 0

如何翻译Mvc4.Paging?

我的网站上包含了 Mvc4.Paging 包,现在我需要翻译如下单词: 显示第 53 项中的第 51 项到第 53 项。 或者 第 1 页,共 5 页 这是分页代码: @Html.PagedListPager(模型,

回答 1 投票 0

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