ASP.NET Core MVC是一个轻量级的表示框架,用于使用ASP.NET Core创建动态网站。它允许创建基于控制器的MVC站点,或查看基于模型的Razor页面。 MVC包括路由,模型绑定和验证,过滤器,Web API和Razor视图引擎等功能。
当尝试在.NET 7.0中运行集成测试时,我面临以下问题: 找不到应用程序依赖项清单 (testhost.deps.json) 中指定的程序集: 包装:'麦克风...
我有一个 ASP.NET Core MVC 项目,我正在尝试特别添加 Blazor,因为我们在模态中有很多动态表单,并且在...处理所有 javascript + modelstate 和 .. .
以下是 ASP.NET Core 中的摘要代码: 公共 IActionResult 索引() { List order = _db.Order.GetAll().ToList(); 返回视图(订单); } 在这段代码中,我需要得到总和...
如何在 ASP.NET Core MVC 中的服务器 Linux 中使用 ffmpeg 连接视频
我的.NET Core项目使用ffmpeg来加入视频,我在本地机器上使用它,它运行良好并将其推送到git,然后合并并运行管道以通过docker将其构建到linux服务器,
带有实体框架的 ASP.NET Core 2 MVC 将主键 Id 保存到不是关系列的列
请看这个案例: 代码: if (产品.ProductId == 0) { 产品.CreateDate = DateTime.UtcNow; 产品.EditDate = DateTime.UtcNow; context.Products.Add(产品...
使用 Ajax 和 ASP.NET Core 6.0 MVC 以及存储库模式从表中删除行
我正在使用Ajax从表中删除数据。单击删除按钮后,我希望将该行的状态设置为 False。代码在服务器端完美运行。我已经检查了 Sw 上的删除 API...
我在 cshtml 中有一个表单正在输入到模型中,但它不断跳过 for 代码块中添加的一些值,特别是 GroupPerDay 值 我在 cshtml 中有一个表单正在输入到模型中,但它不断跳过 for 代码块中添加的一些值,特别是 GroupPerDay 值 <form method="post" asp-action="Create" class="row g-3"> <div class="row g-3 align-items-center"> <div class="row-cols-auto"> <input type="text" hidden class="form-control-plaintext" value="@Model.Department.DepartmentId" asp-for="Department.DepartmentId" /> </div> </div> <div class="row g-3 align-items-center"> <div class="col-auto"> <label for="SubDate" class="col-form-label">NGÀY ĐĂNG KÝ: </label> </div> <div class="col-auto"> <input type="date" id="SubDate" asp-for="DayGroup.SubcriptionDate" class="form-control" /> <span asp-validation-for="DayGroup.SubcriptionDate" class="text-dark"></span> </div> </div> <div class="mb-3 row"> <div class="col-sm-3"> <input type="text" readonly class="form-control-plaintext" value="DS HỌ TÊN" /> </div> <div class="col"> <input type="text" readonly class="form-control-plaintext text-center" value="CA 1" /> </div> <div class="col"> <input type="text" readonly class="form-control-plaintext text-center" value="CA 2" /> </div> <div class="col"> <input type="text" readonly class="form-control-plaintext text-center" value="CA 3" /> </div> </div> @for (int i = 0; i < Model.Department.Persons.Count; i++) { int j = Model.Department.Persons[i].GroupPerDay.Count - 1; <div class="col-auto"> <input type="text" hidden readonly asp-for="Department.Persons[i].PersonId" value="@Model.Department.Persons[i].PersonId" /> <input type="text" hidden readonly asp-for="Department.Persons[i].Name" value="@Model.Department.Persons[i].Name" /> <input type="text" hidden readonly asp-for="Department.Persons[i].GroupPerDay[j].Id" value="@Model.Department.Persons[i].GroupPerDay[j].Id" /> </div> <div class="row"> <div class="col"> <input type="text" readonly class="form-control-plaintext" asp-for="Department.Persons[i].GroupPerDay[j].Person.Name" value="@Model.Department.Persons[i].GroupPerDay[j].Person.Name" /> </div> <div class="col"> <input type="number" class="form-control" asp-for="Department.Persons[i].GroupPerDay[j].Set1" /> </div> <div class="col"> <input type="number" class="form-control" asp-for="Department.Persons[i].GroupPerDay[j].Set2" /> </div> <div class="col"> <input type="number" class="form-control" asp-for="Department.Persons[i].GroupPerDay[j].Set3" /> </div> </div> } <div class="row g-3 align-items-center"> <div class="col-auto"> <button class="btn btn-primary" type="submit">Submit</button> </div> <div class="col-auto"> <a class="btn btn-danger" asp-controller="Home" asp-action="Index">Cancel</a> </div> </div> </form> 型号 public class CreateGroupViewModel { public string AppUserId { get; set; } public AppUser AppUser { get; set; } public Department Department { get; set; } public DayGroup DayGroup { get; set; } } public class DayGroup { public string Id { get; set; } public DateTime SubcriptionDate { get; set; } public Group Group { get; set; } public List<PersonInGroupPerDay> PersonInGroups { get; set; } } public class PersonInGroupPerDay { public string Id { get; set; } public DayGroup DayGroup { get; set; } public Person Person { get; set; } [DefaultValue(0)] public int Set1 { get; set; } [DefaultValue(0)] public int Set2 { get; set; } [DefaultValue(0)] public int Set3 { get; set; } } 输入表格 输入后的Post动作模型 我希望它将我输入的值添加到列表中 我试过了<input class="btn btn-primary" type="Submit" /> 甚至使用 Onclick 的 javascript 来调用函数,但它不起作用 如果您需要更多信息,我可以在评论中添加所需内容。 您只需为最后一个 Persons[i].GroupPerDay 项目添加输入字段。 int j = Model.Department.Persons[i].GroupPerDay.Count - 1; 我们还需要为剩余的 Persons[i].GroupPerDay 项目添加隐藏输入。 试试这个代码: <form method="post" asp-action="Create" class="row g-3"> <div class="row g-3 align-items-center"> <div class="row-cols-auto"> <input type="text" hidden class="form-control-plaintext" value="@Model.Department.DepartmentId" asp-for="Department.DepartmentId" /> </div> </div> <div class="row g-3 align-items-center"> <div class="col-auto"> <label for="SubDate" class="col-form-label">NGÀY ĐĂNG KÝ: </label> </div> <div class="col-auto"> <input type="date" id="SubDate" asp-for="DayGroup.SubcriptionDate" class="form-control" /> <span asp-validation-for="DayGroup.SubcriptionDate" class="text-dark"></span> </div> </div> <div class="mb-3 row"> <div class="col-sm-3"> <input type="text" readonly class="form-control-plaintext" value="DS HỌ TÊN" /> </div> <div class="col"> <input type="text" readonly class="form-control-plaintext text-center" value="CA 1" /> </div> <div class="col"> <input type="text" readonly class="form-control-plaintext text-center" value="CA 2" /> </div> <div class="col"> <input type="text" readonly class="form-control-plaintext text-center" value="CA 3" /> </div> </div> @{ int i = 0; foreach (Person person in Model.Department.Persons) { int j = 0; foreach (var group in person.GroupPerDay) { <div class="col-auto"> <input type="text" hidden readonly asp-for="Department.Persons[i].PersonId" value="@Model.Department.Persons[i].PersonId" /> <input type="text" hidden readonly asp-for="Department.Persons[i].Name" value="@Model.Department.Persons[i].Name" /> <input type="text" hidden readonly asp-for="Department.Persons[i].GroupPerDay[j].Id" value="@Model.Department.Persons[i].GroupPerDay[j].Id" /> </div> if (j == person.GroupPerDay.Count - 1) { <div class="row"> <div class="col"> <input type="text" readonly class="form-control-plaintext" asp-for="Department.Persons[i].GroupPerDay[j].Person.Name" value="@Model.Department.Persons[i].GroupPerDay[j].Person.Name" /> </div> <div class="col"> <input type="number" class="form-control" asp-for="Department.Persons[i].GroupPerDay[j].Set1" /> </div> <div class="col"> <input type="number" class="form-control" asp-for="Department.Persons[i].GroupPerDay[j].Set2" /> </div> <div class="col"> <input type="number" class="form-control" asp-for="Department.Persons[i].GroupPerDay[j].Set3" /> </div> </div> } else { <div class="col-auto"> <input type="hidden" asp-for="Department.Persons[i].GroupPerDay[j].Set1" /> <input type="hidden" asp-for="Department.Persons[i].GroupPerDay[j].Set2" /> <input type="hidden" asp-for="Department.Persons[i].GroupPerDay[j].Set3" /> <input type="hidden" asp-for="Department.Persons[i].GroupPerDay[j].Person.Name" /> </div> } j++; } i++; } } <div class="row g-3 align-items-center"> <div class="col-auto"> <button class="btn btn-primary" type="submit">Submit</button> </div> <div class="col-auto"> <a class="btn btn-danger" asp-controller="Home" asp-action="Index">Cancel</a> </div> </div> 如果您只想在发布操作中获取最后一个Persons[i].GroupPerDay项目,那么您应该尝试这个。 <form method="post" asp-action="Create" class="row g-3"> <div class="row g-3 align-items-center"> <div class="row-cols-auto"> <input type="text" hidden class="form-control-plaintext" value="@Model.Department.DepartmentId" asp-for="Department.DepartmentId" /> </div> </div> <div class="row g-3 align-items-center"> <div class="col-auto"> <label for="SubDate" class="col-form-label">NGÀY ĐĂNG KÝ: </label> </div> <div class="col-auto"> <input type="date" id="SubDate" asp-for="DayGroup.SubcriptionDate" class="form-control" /> <span asp-validation-for="DayGroup.SubcriptionDate" class="text-dark"></span> </div> </div> <div class="mb-3 row"> <div class="col-sm-3"> <input type="text" readonly class="form-control-plaintext" value="DS HỌ TÊN" /> </div> <div class="col"> <input type="text" readonly class="form-control-plaintext text-center" value="CA 1" /> </div> <div class="col"> <input type="text" readonly class="form-control-plaintext text-center" value="CA 2" /> </div> <div class="col"> <input type="text" readonly class="form-control-plaintext text-center" value="CA 3" /> </div> </div> @for (int i = 0; i < Model.Department.Persons.Count; i++) { int j = Model.Department.Persons[i].GroupPerDay.Count - 1; int firstIndex = 0; <div class="col-auto"> <input type="text" hidden readonly asp-for="Department.Persons[i].PersonId" value="@Model.Department.Persons[i].PersonId" /> <input type="text" hidden readonly asp-for="Department.Persons[i].Name" value="@Model.Department.Persons[i].Name" /> <input type="text" hidden readonly asp-for="Department.Persons[i].GroupPerDay[firstIndex].Id" value="@Model.Department.Persons[i].GroupPerDay[j].Id" /> </div> <div class="row"> <div class="col"> <input type="text" readonly class="form-control-plaintext" asp-for="Department.Persons[i].GroupPerDay[firstIndex].Person.Name" value="@Model.Department.Persons[i].GroupPerDay[j].Person.Name" /> </div> <div class="col"> <input type="number" class="form-control" asp-for="Department.Persons[i].GroupPerDay[firstIndex].Set1" value="@Model.Department.Persons[i].GroupPerDay[j].Set1" /> </div> <div class="col"> <input type="number" class="form-control" asp-for="Department.Persons[i].GroupPerDay[firstIndex].Set2" value="@Model.Department.Persons[i].GroupPerDay[j].Set2" /> </div> <div class="col"> <input type="number" class="form-control" asp-for="Department.Persons[i].GroupPerDay[firstIndex].Set3" value="@Model.Department.Persons[i].GroupPerDay[j].Set3" /> </div> </div> } <div class="row g-3 align-items-center"> <div class="col-auto"> <button class="btn btn-primary" type="submit">Submit</button> </div> <div class="col-auto"> <a class="btn btn-danger" asp-controller="Home" asp-action="Index">Cancel</a> </div> </div>
在 Visual Studio 2022 上通过向导添加 Azure Key Vault 对象在 Azure 门户 Key Vault 上不可见
我正在为我的 ASP.NET MVC 项目添加依赖项 Azure 密钥保管库 Azure SQL 数据库 所有依赖项均已成功连接。我在 Azure 应用服务/设置中获得了环境变量...
我正在开发一个 ASP.NET Core 8 项目,我有 MVC 公共部分 区域 -> MVC 管理部分 区域 -> Razor 页面 身份区域 我也有本地化来运行英语应用程序......
错误:进程已完成,退出代码为 1 - Azure 中的 ASP.NET Core MVC 部署
尝试在 Azure 中部署 ASP.NET Core MVC 应用程序时,出现此错误 错误:进程已完成,退出代码为 1 请查看屏幕截图以了解更多详细信息: 输入图片描述
错误:当我从 BaseController 继承时,请求匹配了多个端点
我创建了一个BaseController来控制对所有子控制器方法的访问,代码如下: 公共类 BaseController :控制器 { 受保护的只读
System.InvalidOperationException:无法设置 OnStarting,因为响应已开始
我正在 NopCommerce(ASP.NET Core MVC 项目)上构建插件(项目)。我有两个独立的插件(项目),一个用于公开 API,另一个用于实时聊天支持。对于实时查...
ArgumentException:调用 'DbSet<News>.Find' 的位置 0 处的键值是 'string' 类型,与 int' 的属性类型不匹配
当我尝试编辑我的帖子时抛出此错误。 这是我的代码: 公共异步任务编辑(字符串ID) { 如果(id == null) { 返回未找到(); } // 问题 ...
使用 C# 列出 ASP.NET Core MVC 中控制器中的所有视图及其元素
是否可以使用 C# 在 ASP.NET Core MVC 中列出项目中的所有视图及其元素,如下所示? 实际上我想用 C# 中的反射来做到这一点。请给我一个解决方案。 区域 继续...
我正在使用 ASP.NET Core 6,当我尝试将声明添加到表 UserClaims 中时,出现此错误: 无法将 NULL 值插入到 UserId 列中 表 UserClaims 列不允许为空 更新...
所以我最近开始更多地记录我的代码,因为我没有独自完成许多项目。在 VSCode 内的标准 Nodejs 项目中,我可以像这样创建内联 @typedef 和 @type...
在 net 4.5 中,我们正在使用这样的代理: 在 net 4.5 中,我们正在使用这样的代理: <system.net> <!-- --> <defaultProxy enabled="true" useDefaultCredentials="false"> <proxy usesystemdefault="True" proxyaddress="http://192.168.1.1:8888" bypassonlocal="True" autoDetect="False" /> <module type="CommonLibrary.Proxy.MyProxy, CommonLibrary, Version=1.0.0.0, Culture=neutral" /> </defaultProxy> <settings> <httpWebRequest useUnsafeHeaderParsing="true" /> <servicePointManager expect100Continue="false" /> </settings> </system.net> 但是在asp.net core或者测试中我们找不到像上面这样的解决方案 有人可以帮我吗? 我真的很感谢你的帮助 谢谢,问候 您可以在 web.config 中将代理显式设置为环境变量,以及它应跳过的域。例如: <?xml version="1.0" encoding="utf-8"?> <configuration> <location path="." inheritInChildApplications="false"> <system.webServer> <handlers> <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" /> </handlers> <aspNetCore processPath="dotnet" arguments=".\Your.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" hostingModel="inprocess"> <environmentVariables> <environmentVariable name="http_proxy" value="http://yourproxy.ins.local"/> <environmentVariable name="https_proxy" value="http://yourproxy.ins.local"/> <environmentVariable name="no_proxy" value=".local,.applicationinsights.azure.com,.applicationinsights.microsoft.com,.services.visualstudio.com"/> </environmentVariables> </aspNetCore> </system.webServer> </location> </configuration> 虽然在可以使用 HttpClientHander 的情况下可以手动设置代理,但默认所有请求无需代码即可执行此操作,就像在 .NET Framework 中所做的那样,目前是不可能的。如果您使用的库不公开此功能,那就太糟糕了。 值得庆幸的是,从 .NET Core 3.0 开始,只需设置环境变量即可实现这一点(即,其行为与 Linux 一直工作的方式完全相同):https://github.com/dotnet/corefx/issues/37187 或者,https://github.com/dotnet/corefx/issues/36553 在 DefaultWebProxy 上添加了一个新的静态 HttpClient 属性,这将允许您通过代码完成同样的事情。这也将在 Core 3.0 中提供。 要在.net core中使用HTTP代理,您必须实现IWebProxy接口。这来自System.Net.Primitives.dll程序集。如果还没有,您可以将其添加到 project.json 例如 "frameworks": { "dotnet4.5": { "dependencies": { "System.Net.Primitives": "4.3.0" } } } 实现非常简单 public class MyHttpProxy : IWebProxy { public MyHttpProxy() { //here you can load it from your custom config settings this.ProxyUri = new Uri(proxyUri); } public Uri ProxyUri { get; set; } public ICredentials Credentials { get; set; } public Uri GetProxy(Uri destination) { return this.ProxyUri; } public bool IsBypassed(Uri host) { //you can proxy all requests or implement bypass urls based on config settings return false; } } var config = new HttpClientHandler { UseProxy = true, Proxy = new MyHttpProxy() }; //then you can simply pass the config to HttpClient var http = new HttpClient(config) 结账 https://msdn.microsoft.com/en-us/library/system.net.iwebproxy(v=vs.100).aspx 您应该使用中间件。你看过这个吗: https://github.com/aspnet/Proxy 有一个“样本”文件夹: https://github.com/aspnet/Proxy/tree/dev/samples/Microsoft.AspNetCore.Proxy.Samples 有关该主题的其他资源: http://josephwoodward.co.uk/2016/07/proxying-http-requests-asp-net-core-using-kestrel http://overengineer.net/creating-a-simple-proxy-server-middleware-in-asp-net-core 中间件适合您吗? 在调试会话中,可以在 \Properties\launchSettings.json 文件中设置代理环境变量: "https": { "commandName": "Project", "dotnetRunMessages": true, "launchBrowser": true, "launchUrl": "dashboard", "applicationUrl": "https://localhost:7036;http://localhost:5085", "environmentVariables": { "ASPNETCORE_ENVIRONMENT": "Development", "ALL_PROXY" : "http://localhost:8888" // <- proxy } } 另一个未完成的解决方法是: 将 .NET Core 应用程序部署到 Web 服务器(我的是 IIS)之后。根文件夹中实际上有一个 web.config 文件。 手动添加 <system.net> <defaultProxy useDefaultCredentials="true"> </defaultProxy> </system.net> 或者您的特定设置会发挥神奇作用 仅适用于服务器。您的本地构建仍然无法工作。
生成令牌以使用 ASP.NET Core MVC 中的联合凭据从 Azure 获取 ADO 工作项
我想通过仅使用 ASP.NET Core MVC 中的联合凭据来生成没有密钥/证书的 VssOAuthAccessTokenCredential 的访问令牌。 var credential = new DefaultAzureCredential(); ...
使用 IUrlHelper 生成版本化 API 操作的 URL
在我的 ASP.NET Core 项目中,我使用 aspnet-api-versioning,如下所示: [API版本(“1.0”)] [路线(“api/v{版本:apiVersion}/用户”)] [授权] 公共类 UserController :控制器 { [HttpGet,
ASP.NET Core MVC:除了默认模型绑定之外,模型还将所有 POSTed 键值绑定到非名称匹配属性?
我正在尝试获取原始发布的键值对,以便稍后在我的操作中进行额外的处理逻辑。 我有一堂这样的课: 公共类验证请求 其中 T :类 { ...