gpt4 book ai didi

.net - 可以在 ASP.NET MVC 中的 ValidationAttribute 中访问 HttpContext 吗?

转载 作者:行者123 更新时间:2023-12-02 03:46:48 25 4
gpt4 key购买 nike

可以在 ASP.NET MVC 3 中的 ValidationAttribute 中访问 HttpContext 吗?

我需要测试路线数据中的某些内容是否匹配,以便在验证器上返回 true。

谢谢

最佳答案

是的,您可以访问静态 HttpContext.Current 属性来获取当前的 http 上下文。

此属性可能会返回 null,具体取决于您在哪个线程上运行验证,或者在非 http 请求(例如单元测试中)中。

您很可能希望抽象出对 .Current 的调用,以便创建更多可测试的代码。为此,请让您的抽象成员返回 HttpContextBase,如下所示:

return new HttpContextWrapper(HttpContext.Current);

此抽象将允许您传递模拟 http 上下文基础实例以方便测试。

关于.net - 可以在 ASP.NET MVC 中的 ValidationAttribute 中访问 HttpContext 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6977637/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com