问题标签 [mvcroutehandler]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - MVC C# 自定义 MvcRouteHandler - 如何?
有没有人有提供自定义 MvcRouteHandler 的经验?在我的应用程序中,我想实现一个像http://mydomain/en/about或http://mydomain/de/about这样的全球化模式。
至于持久性,我希望在请求到达后立即读取 cookie,如果此 cookie 中有语言设置,请应用它(因此到达http://mydomain/的用户将被转移到http:// /mydomain/en/例如)。如果没有 cookie,我想获得浏览器支持的第一种语言,应用这个并将其存储在这个 cookie 中。
我想这不能用 mvc 在它的初始项目模板中提供的标准路由机制来完成。在新闻组中,我得到了查看 MvcRouteHandler 并实现我自己的提示。但是很难找到如何做到这一点的样本。
有任何想法吗?
asp.net-mvc - MVC n级路由构建
我想创建一个包含 N 级类别的产品目录
例如
这是可能的,如果是的话,怎么办?
asp.net-mvc-3 - MVC3 RouteHandler 结果忽略已解析路线中的区域 - 为什么?
我正在将 MVC3 应用程序拆分为两个区域。现有应用程序正在进入一个区域 (V1),我们正在开始重新设计第二个区域 (V2)。
我将视图、模型、控制器等都移到了 MyApp\Areas\V1\xxx 文件夹中,并且我已经能够验证大部分内容是否正在加载。我将 V1 的所有 Route 注册移动到 V1AreaRegistration.cs 文件中,并将其修改为使用context.MapRoute
而不是RouteTable.Routes.MapRoute
.
使用 Phil Haack 的 RouteDebugger 查看路由,一切看起来都不错——我的 V2 路由正在按应有的方式解析,并且基本的 V1 路由正常工作。什么不起作用是我有一个自MvcRouteHandler
定义定义的 V1 路由,例如:
如果我_myCustomRouteHandler
从此调用中删除 ,它会很好地工作并将我发送到 V1 区域下的正确视图。有了它,路由似乎忽略了它被注册为区域路由的事实,我得到一个黄色错误页面,上面写着:
我需要能够使用路由处理程序——它对{myRoutVal}
参数进行一些验证工作,如果它无效则重定向到错误页面。
帮助!!
asp.net-mvc-3 - MVC 3 HyphenatedRouteHandler 不兼容区域和重复的控制器名称
我对 MVC3 还很陌生,但是我花了很多时间研究和测试,但我找不到解决方案。Stack 上还有另一个类似的帖子,但 7 个月后仍未得到答复。
症结在于:如果您有重复名称的区域和控制器 - 没问题。如果您有区域并使用 HyphenatedRouteHandler - 没问题。如果您尝试使用区域、重复的控制器名称和带连字符的路由处理程序,则会收到错误消息:
找到了与名为“产品”的控制器匹配的多种类型。如果服务此请求的路由 ('{controller}/{action}/{id}') 未指定命名空间来搜索与请求匹配的控制器,则可能会发生这种情况。如果是这种情况,请通过调用采用“namespaces”参数的“MapRoute”方法的重载来注册此路由。
我还应该补充一点,我在根控制器上收到错误,但不是该区域内的控制器。例如,/products 不起作用,但 /admin/products 起作用。
我将永远感激一个具体的解决方案!代码如下所示:
全球.asax
和:
AdminAreaRegistration.cs
asp.net - .NET MVC URL 路由帮助
我正在尝试在我的 .NET MVC 应用程序中配置一个 ErrorController,但我目前无法在控制器上执行任何操作,所以我相信这可能是因为我需要在global.asax中注册 URL 路由
错误控制器如下:
我希望能够分别通过以下 URL 调用上述操作。
~/Error/
~/Error/通用
~/Error/NotFound
我相信在Global.asax文件中,我需要使用以下内容注册这些路由:
我将如何为此添加/指定正确的路由处理程序?
asp.net-mvc - 如何在 MVC3 的自定义路由处理程序中指定命名空间?
我写了一个自定义路由处理程序。因为我的网站中有控制器名称冲突的区域,所以我收到错误:找到与名为...的控制器匹配的多种类型
我想我需要在我的处理程序中指定一个命名空间,对吧?
我尝试了以下方法,但均无效:
正确的方法是什么?
注意:因为我的处理程序进行数据库查找并根据结果选择不同的控制器,所以我不能在 Global.asax.cs 文件中使用基本的 MapRoute() 方法(据我所知)。
c# - RequireHttpsAttribute 和加密的请求数据
我有一个接受敏感数据的控制器操作。
为确保数据安全,我希望确保某些请求是使用 HTTPS(SSLv3、TLS 1)发出的。我考虑使用的方法之一是我的操作中的 RequireHttpsAttribute:
但是,在对此进行测试时,我的提琴手透露,对该操作发出的 HTTP 请求是 302 重定向到 HTTPS。我的问题是这样的:
如果我发出了一个 302 重定向到 HTTPS 的请求,我是否已经在重定向之前通过 HTTP 发送了敏感数据?
asp.net-mvc-4 - MVC4 中默认传递 RouteValueDictionary
我在升级到 MVC4 时遇到了一个问题,我想知道是否有其他人看到过这个问题以及如何解决它。每当我将 IDictionary、Dictionary 或 RouteValueDictionary 放入操作的参数列表时,都会传递该 MVC 调用的路由值。
要重现此问题,请使用默认 Internet 应用程序设置创建一个 MVC4 Web 项目并添加
到 Index 控制器的参数列表,并在方法中放置一个断点。您将看到 IDictionary 参数由模型绑定器使用路由值填充。
我该如何关闭它,或者解决这个问题?
asp.net-mvc - 使用 ASP.net MVC 从不同目录路由静态文件,无需更改 IIS 并进行身份验证
让我为我的应用程序的单个用户存储内容:
- C:\文件{GUID}\
这些文件可能类似于:
- C:\文件{GUID}\bunny.jpg
- C:\Files{GUID}\unicorn.html
最终用户应该看到一个“友好”的 url。
http://domain.com/files/{GUID}/bunny.jpg
该 url 必须以某种方式通过控制器或 httpmodule 或 thingIdontknow 才能被授权查看该文件。这些权限可能每天都在变化,因此需要经常检查文件的权限。
从我一直在阅读的内容来看,这是完全可能的,但我不确定接下来要编写什么代码,或者是否有人对此有任何见解。HttpModule 还是控制器?我对需要发生什么感到困惑。
forms - MVC.NET 自定义根处理程序 Html:BeginForm 中的错误操作
我使用了自定义 mvc 路由处理程序。但是当我在视图中使用 Html.BeginForm 或 Ajax.BeginForm 时,Action 参数会意外更改。我的代码在上面
我的注册路线方法是:
我的 MvcRouteHandler 是:
我的观点是:
最后浏览器中的错误操作如下所示:
form action="/man-parfume" data-ajax="true" data-ajax-method="Post" id="form0" method="post"> form action="/man-parfume" method="post" > 输入类型="提交" 值="发送" />
我以开始形式将控制器编写为主页,但在呈现 Html.BeginForm 时它发生了变化。
如何将表格发布到主页/索引?