首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

当我在asp.net mvc控制器操作中验证失败时,如何保留我的URL

当在ASP.NET MVC控制器操作中验证失败时,可以通过以下方法保留URL:

  1. 使用ModelState字典对象:在控制器中,当验证失败时,可以将验证错误信息添加到ModelState字典对象中。在返回视图时,可以将ModelState字典对象传递给视图,以便在视图中显示错误信息。在视图中,可以使用Html.ValidationSummary或Html.ValidationMessage等辅助方法来显示错误信息。
  2. 使用TempData:TempData是一个字典对象,用于在请求之间传递临时数据。在控制器中,当验证失败时,可以将URL保存到TempData中。然后,在重定向到其他页面或返回视图时,可以从TempData中获取URL并进行相应的处理。

下面是一个示例代码:

代码语言:csharp
复制
[HttpPost]
public ActionResult YourAction(YourModel model)
{
    if (!ModelState.IsValid)
    {
        // 验证失败,将错误信息添加到ModelState中
        ModelState.AddModelError("", "验证失败的错误信息");

        // 保存URL到TempData中
        TempData["ReturnUrl"] = Request.Url.ToString();

        // 返回视图
        return View(model);
    }

    // 验证通过,继续处理其他逻辑

    return RedirectToAction("SuccessAction");
}

[HttpGet]
public ActionResult YourAction()
{
    // 从TempData中获取保存的URL
    string returnUrl = TempData["ReturnUrl"] as string;

    // 清除TempData中的URL
    TempData.Remove("ReturnUrl");

    // 其他处理逻辑

    return View();
}

在视图中,可以使用以下方式来显示错误信息:

代码语言:html
复制
@Html.ValidationSummary(true)

希望以上信息对您有帮助。如果您需要更多帮助或有其他问题,请随时提问。

相关搜索:如何从ASP.NET MVC中的url检查操作权限在ASP.NET MVC中的控制器操作之后调用方法如何使用ASP.NET MVC中的asp控制器或asp操作访问url中的多个层?如何在asp.net mvc控制器中处理stackoverflow的问题URL?在ASP.NET MVC核心中成功进行身份验证时触发操作的最佳方式是什么?即使在“必需的”验证失败之后,MVC操作也会受到影响。它在单击按钮时显示验证消息,但它正在调用我的操作在ASP.NET MVC中,如何从控制器中的操作方法在新选项卡中打开静态.html页面?当我在控制器MVC上定义了一个路由属性时,我如何重定向一个新的URL?如何将JSON格式的数据传递给ASP.NET核心MVC中的控制器操作如何在asp.net mvc中隐藏文本框点击时的验证消息?如何在选中复选框时将当前模型详细信息的值传递给asp.net mvc中的控制器操作在ASP.NET MVC中,如何使用C#代码中的Razor @ Url.Content()帮助程序?在ASP.NET MVC 3中使用不显眼的验证,如何在表单无效时采取措施?当我在vue.js中滚动组件时,如何动态更改URL中的散列?当我尝试通过模型列表将200多条记录从视图发送到控制器时,它在MVC中的控制器HTTP post操作中始终显示为空如何只在用户点击提交表单时触发数据验证,而不是在ASP.NET MVC中文本框中的值改变后触发数据验证?当我不知道方法的参数在Moq中是什么时,如何验证方法被调用如何将注册失败的验证重定向到在laravel jetstream fortify中带有锚点的url在sql asp.net MVC5中使用linq时,如何格式化记录中的数据?在Rails 3中,当我不尝试更新密码时,如何跳过密码字段的验证?
相关搜索:
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

ASP.NET MVC编程——模型

2模型绑定 默认模型绑定器 通过DefaultModelBinder解析客户端传来的数据,为控制器的操作参数列表赋值。...清空模型绑定状态 使用ModelState.Clear();清空模型绑定状态以后,验证失败的信息就不会显示到视图上,即使在视图中使用@Html.ValidationSummary()方法。...当操作带有参数时,MVC框架使用模型绑定器(默认的或自定义的)在Http请求中查找数据,用于构建控制器操作的参数列表。 验证发生的时间 模型验证是在操作执行之前完成的。...当模型绑定器使用新值对模型属性更新后,会利用当前模型元数据获得模型验证器,模型验证器会找到所有施加于模型属性的特性并执行验证逻辑,然后模型绑定器会捕获所有失败的验证规则,并将它们放入模型状态中。...Scott Allen,孙远帅/邹权译  ASP.NET MVC4 高级编程(第四版) 3.黄保翕,ASP.NET MVC4开发指南 4.蒋金楠,ASP.NET MVC4框架揭秘 5.https://www.asp.net

2.4K80

ASP.NET MVC学习笔记02控制器和路由

ASP.NET MVC会调用不同的控制器类(和其内部不同的操作方法)这取决于传入URL。 所使用的ASP.NET MVC的默认URL路由逻辑使用这样的格式来判定哪些代码以便调用。...---- 路由 这里就提到了一个很重要的概念,路由(URL Routing),什么是路由,在ASP.NET MVC中,一个URL请求是由对应的一个Controller中的Action来处理的,由URL...当我们在VS中创建一个新的 ASP.NET MVC程序,程序将会自动使用默认的路由表。 默认路由表 默认路由表存放在App_Start/RouteConfig.cs 中。 ?...”的控制器和“Index” 的操作方法,在上面的代码中的defaults部分指定的: 第一部分的URL确定哪个控制器类会被执行。...参数的自动装配 再修改一下welcome方法,将num改为id,输入url时,把id写在开头,用“?”分割,传入name。 ? ASP.NET MVC的路由自动匹配了ID这个参数,为什么呢?

1.5K40
  • ASP.NET MVC编程——验证、授权与安全

    为限制控制器只能执行HTTPS,使用RequireHttpsAttribute 2 授权 对账户的权限的控制可以通过在控制器或控制器操作上加AuthorizeAttribute 属性。...AuthorizeCore,HandleUnauthorizedRequest,OnAuthorization,那么在执行授权动作的过程中他们是如何被调用的呢?...生成 实现机制:AntiForgeryToken方法向用户浏览器cookie中写入一个加密的数据,并在表单内插入一个隐藏栏位,每次刷新页面时隐藏栏位的值都不同,每次执行控制器操作前,都会验证隐藏栏位和浏览器...cookie中的值是否相同,只有相同才允许执行控制器操作。...Scott Allen,孙远帅/邹权译  ASP.NET MVC4 高级编程(第四版) 3.黄保翕,ASP.NET MVC4开发指南 4.蒋金楠,ASP.NET MVC4框架揭秘 5.https://www.asp.net

    3.2K60

    ASP.NET MVC编程——控制器

    每一个请求都会经过控制器处理,控制器中的每个方法被称为控制器操作,它处理具体的请求。 1操作输入参数 控制器的操作的输入参数可以是内置类型也可以是自定义类型。...允许跳过AuthorizeAttribute的验证执行控制器操作。...,不会路由到此控制器方法 5向视图传递数据 与其说传递数据,倒不如说视图如何获得控制器处理过的数据。...使用异步控制器的目的: 异步控制器操作中也要等待任务直至处理完,所以处理速度不比同步方法快,其主要作用是高效地利用服务器资源。...Scott Allen,孙远帅/邹权译  ASP.NET MVC4 高级编程(第四版) 3.黄保翕,ASP.NET MVC4开发指南 4.蒋金楠,ASP.NET MVC4框架揭秘 5.https://www.asp.net

    2.2K90

    ASP.NET MVC编程——路由

    controller = "Home", action = "Index", id = UrlParameter.Optional } ); } } 注意:路由中的控制器和操作不区分大小写...如constraints:new {id=@"\d+"}限制id只能是数值类型 规则:从前到后逐段匹配,请求URL参数少于定义的URL时,默认配置补全对应的参数。...约定路由中的控制器和操作用controller和action表达。 段也可以包含字面值。...            routes.RouteExistingFiles = true;             //其他配置         } 使用特性配置路由 将属性RouteAttribute 标记到控制器或控制器操作上...Scott Allen,孙远帅/邹权译  ASP.NET MVC4 高级编程(第四版) 3.黄保翕,ASP.NET MVC4开发指南 4.蒋金楠,ASP.NET MVC4框架揭秘 5.https://www.asp.net

    1.7K120

    如何在 ASP.NET MVC 中集成 AngularJS(1)

    另外,还有最新的数据库技术、最新的设计模式和技术。 当选择最新的软件技术时,有几个因素在起作用,其中包括如何将这些技术整合起来。...在 Razor 视图中的 HTML 混合的 .NET 代码看起来像套管代码。另外,在 ASP.NET MVC 模式下,一些业务逻辑是可以被最终写入在 MVC 的控制器中。...在MVC控制器中,写入代码来控制表示层中的信息,这是很有诱惑力的。...最终,在大量的研究和反复试验和失败后,我想出了少量代码却行之有效的解决方案。 本文的接下来部分将会展示,在 ASP.NET MVC 中集成 AngularJS 的过程。...当我们在进行 ASP.NET MVC 和 AngularJS 开始时,还可以借助开发工具来助力开发过程。

    7.6K60

    ASP.NET MVC编程——视图

    每一行前面加上“@:” 5)使用注释 使用@*和*@将要注释的部分包起来 6)用@@在页面上显示@ @using 在一个View中引入此页所需程序集的命名空间。...Html.ValidationSummary 数据模型验证失败时显示的数据信息,配合Html.BeginForm表单一起使用 Html.ValidationMessage 显示特定属性的验证信息 Html.HttpMethodOverride...,若不是控制器操作方法名称,控制器返回视图时要指定视图名。...Views文件夹下的Shared保存多个控制器共享的视图 视图定位规则是,先在Views文件夹中找对应控制器及控制器方法的视图,没有找到就到Shared文件夹下找。...Scott Allen,孙远帅/邹权译  ASP.NET MVC4 高级编程(第四版) 3.黄保翕,ASP.NET MVC4开发指南 4.蒋金楠,ASP.NET MVC4框架揭秘 5.https://www.asp.net

    3.1K100

    ASP.NET MVC 5 - 控制器

    本系列教程,我们将覆盖所有这些概念,并告诉您如何在ASP.NET MVC 5中使用它们来构建应用程序。 首先,让我们创建一个控制器类。...ASP.NET MVC会调用不同的控制器类(和其内部不同的操作方法)这取决于传入URL。...段的,默认为“Home”的控制器和“Index”的操作方法,在上面的代码中的defaults部分指定的: 第一部分的URL确定哪个控制器类会被执行。...因此 /HelloWorld映射到HelloWorldController控制器类。 第二部分的URL确定要执行控制器类中的那个操作方法。...如果没有明确的指定操作方法,Index方法会默认的被控制器类调用。 第三部分的URL段(Parameters参数)是路由数据。在本教程中,稍后我们将看到路由数据。

    2.6K80

    ASP.NET Core MVC 概述

    在 MVC 模式中,控制器是初始入口点,负责选择要使用的模型类型和要呈现的视图(因此得名 - 它控制应用如何响应给定请求)。 备注 控制器不应由于责任过多而变得过于复杂。...Core MVC 建立在 ASP.NET Core 的路由之上,是一个功能强大的 URL 映射组件,可用于生成具有易于理解和可搜索 URL 的应用程序。...接收传入请求时,路由引擎分析 URL 并将其匹配到定义的 URL 格式之一,然后调用关联的控制器操作方法。...验证属性在值发布到服务器前在客户端上进行检查,并在调用控制器操作前在服务器上进行检查。...在模型类型上指定的验证逻辑作为非介入式注释添加到呈现的视图,并使用 jQuery 验证在浏览器中强制执行。 依赖关系注入 ASP.NET Core 内置有对依赖关系注入 (DI) 的支持。

    6.4K20

    ASP.NET MVC 5 - 验证编辑方法(Edit method)和编辑视图(Edit view)

    在本节中,您将验证电影控制器生成的编辑方法(Edit action methods)和视图。但是首先将修改点代码,使得发布日期属性(ReleaseDate)看上去更好。...因此,ASP.NET 将http://localhost:xxxxx/Movies/Edit/4转化到Movies 控制器中Edit操作方法,参数ID等于 4 的请求。...Visual Studio2013中有一个很好的改善: 显示和编辑视图文件时。当你运行应用程序打开视图文件时,Visual Studio2013的将调用正确的控制器操作方法来展示视图。 ?...以上创建搜索方法和视图的示例是为了帮助大家更好的掌握MVC的知识,在进行MVC开发时,开发工具也可以大大帮助提高工具效率。...ASP.NET MVC 5 - 开始MVC 5之旅 2. ASP.NET MVC 5 - 控制器 3. ASP.NET MVC 5 - 视图 4.

    6.7K110

    Asp.Net MVC4入门指南(2):添加一个控制器

    根据传入的URL,ASP.NET MVC调用不同的控制器类(和它们之中不同的操作方法)。...因此 /HelloWorld映射到HelloWorldController控制器类。第二部分的URL确定要执行控制器类中的那个操作方法。...默认的MVC映射为/[Controller]/[ActionName]/[Parameters] 对于这个URL,控制器类是HelloWorld,操作方法是Welcome,您还没有使用过URL的[Parameters...改变您的Welcome 方法来包含两个参数,如下所示。需要注意的是,示例代码使用了C#语言的可选参数功能,numTimes参数在不传值时,默认值为1。...相反,我们通常会使用一个单独的视图模板文件来帮助生成返回的HTML。让我们来看看下面我们如何能做到这一点吧。 控制器是MVC中的重要组成部分,有了本节知识的学习,相信大家会更加深入地理解MVC。

    1K70

    ASP.NET MVC 5 - 查询Details和Delete方法

    在这部分教程中,接下来我们将讨论自动生成的Details和Delete方法。 查询Details和Delete方法 打开Movie控制器并查看Details方法。...scaffolding引擎增加了一个注释表明,在调用的HTTP请求方法中,GET请求有三个URL段,Movies控制器,Details方法和ID值。...Code First 使得您可以轻松的使用Find方法来搜索数据。一个重要的安全功能内置到了方法中。方法首先验证Find方法已经找到了一部电影,然后再执行其它代码。...这是框架代码在前面的示例中所使用的方法。然而,这就带来了一个小问题: ASP.NET 将部分的 URL按名称映射到操作方法,如果您重命名了方法,通常Routing将无法找到该方法。...ASP.NET MVC 应用程序并在本地的 DB 数据库中存储数据。

    3.1K60

    ASP.NET MVC框架(第四部分): 处理表单编辑和提交场景

    系列的第二篇对ASP.NET MVC框架的URL路径选择(routing)架构做了深入探讨,讨论了它的工作原理以及你如何使用它来处理更高级的URL路径选择场景。...表单输入和提交场景 为示范如何在ASP.NET MVC框架中处理表单输入和提交场景的一些基本原则,我们将建造一个简单的产品列表,产品生成,和产品编辑场景。...当我们访问 /Products/Category/1 URL时,在浏览器中查看源码的话,你会注意到我们的ASP.NET MVC应用输出了非常干净的HTML和URL标识: ?...结语 希望本帖子提供了在ASP.NET MVC框架中如何处理表单输入和提交场景的一些细节,还提供了你可以如何处理和结构化常见数据输入和编辑场景的一些背景。...点击这里下载一个内含我们在上面建造的完整应用源代码的.ZIP 文件。 在将来的帖子里,我将讨论如何处理表单输入和编辑场景中数据验证和错误复原的情形。

    5.1K70

    ASP.NET MVC 5 - 将数据从控制器传递给视图

    在我们讨论数据库和数据模型之前,让我们先讨论一下如何将数据从控制器传递给视图。控制器类将响应请求来的URL。...ViewBag是一个动态的对象,这意味着在您没有给ViewBag放置属性时,它没有任何属性,您可以把任何您想放置的对象放入到 ViewBag对象中。...ASP.NET MVC model binding system 会自动将地址栏中URL里的 query string映射到您方法中的参数(name 和numTimes)。...学习了本节内容,才能更好的理解数据是如何从控制器传递到视图显示的。在掌握这些MVC知识的同时,也可以借助一些开发工具来帮助开发过程。...ASP.NET MVC 5 - 验证编辑方法(Edit method)和编辑视图(Edit view) 9. ASP.NET MVC 5 - 给电影表和模型添加新字段 10.

    5K100

    【asp.net core 系列】2 控制器与路由的恩怨情仇

    前言 在上一篇文章中,我们初步介绍了asp.net core,以及如何创建一个mvc项目。从这一篇开始,我将为大家展示asp.net core 的各种内容,并且尝试带领大家来挖掘其中的内在逻辑。...当然,那是以后的事情。这一篇将通过自定义一个控制器来为大家介绍asp.net core mvc 中控制器和路由的相关知识。 ? 1....Index() { return Content("Test"); } } 结合两个不常规的控制器类,让我们初窥asp.net core MVC是如何识别控制器的。...在默认情况下,一个访问URL会在程序中解析成如下格式: http://://[其他参数] 在上文中,我们知道了控制器的解析规则,那么现在看一下...路由 在第一节中,我们介绍了一下asp.net core mvc如何寻找控制器和Action,那这一节将介绍程序如何从请求链接中解析出控制器和Action的名称,也就是路由映射。

    91020

    七天学会ASP.NET MVC (六)——线程问题、异常处理、自定义URL

    以上问题的解决方法 是否存在疑虑,当发送请求时,如何获取响应? 众人皆知的编程规则,程序中任何事件都是由线程执行的,请求事件也是。...使用await关键字也可标记异步操作,能够保证异步操作完成时才能够继续执行下面的代码。 一旦异步操作在Action 方法中完成执行,必须执行worker线程。...最好的答案是“执行Action 方法”,但仍存在疑问:对于一个特定的URL请求,如何确定控制器和action 方法。...理解RouteTable 在Asp.net mvc中有RouteTable这个概念,是用来存储URL 路径的,简而言之,是保存已定义的应用程序的可能的URL pattern的集合。...理解ASP.NET MVC 请求周期 在本节中我们只讲解请求周期中重要的知识点 1.

    3.9K100

    ASP.Net MVC开发基础学习笔记:一、走向MVC模式

    (1)处理流程   在ASP.Net MVC中,客户端所请求的URL是被映射到相应的Controller去,然后由Controller来处理业务逻辑,或许要从Model中取数据,然后再由Controller...M:Model 主要是存储或者是处理数据的组件;Model其实是实现业务逻辑层对实体类相应数据库操作,如:CRUD。它包括数据、验证规则、数据访问和业务逻辑等应用程序信息。...(3)控制器的Action方法执行完成后,返回ViewResult,然后MVC框架在执行ExcuteResult方法时,Controller中的ViewData数据会传递给ViewPage类,其实就是把...中查询数据时需要转换合适的类型 在ViewPage中查询数据时不需要类型转换 有一些类型转换代码 可读性更好   (6)如何在程序中使用ViewData与ViewBag   ①在Controller中的代码...所以,所有的请求都是要指定一个具体的Action,Url的格式是根据路由规则来定的。那么,在ASP.Net MVC的路由规则默认又是什么,在哪里设置的呢?

    2K30
    领券