首页
学习
活动
专区
工具
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请求是由对应一个ControllerAction来处理,由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.1K60

    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

    3K100

    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 - 控制器

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

    2.6K80

    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):添加一个控制器

    根据传入URLASP.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 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 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 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名称,也就是路由映射。

    90020

    七天学会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方法,ControllerViewData数据会传递给ViewPage类,其实就是把...查询数据需要转换合适类型 ViewPage查询数据不需要类型转换 有一些类型转换代码 可读性更好   (6)如何在程序中使用ViewData与ViewBag   ①Controller代码...所以,所有的请求都是要指定一个具体Action,Url格式是根据路由规则来定。那么,ASP.Net MVC路由规则默认又是什么,在哪里设置呢?

    2K30

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

    )处理流程   ASP.Net MVC,客户端所请求URL是被映射到相应Controller去,然后由Controller来处理业务逻辑,或许要从Model取数据,然后再由Controller...再说回前面我们运行ASP.NET MVC程序访问http://www.aspnetmvc.com/Home/Index这个URL,它访问其实是HomeControllerIndex这个Action...M:Model 主要是存储或者是处理数据组件;Model其实是实现业务逻辑层对实体类相应数据库操作,如:CRUD。它包括数据、验证规则、数据访问和业务逻辑等应用程序信息。...查询数据需要转换合适类型 ViewPage查询数据不需要类型转换 有一些类型转换代码 可读性更好   (6)如何在程序中使用ViewData与ViewBag   ①Controller代码...所以,所有的请求都是要指定一个具体Action,Url格式是根据路由规则来定。那么,ASP.Net MVC路由规则默认又是什么,在哪里设置呢?

    90120
    领券