问题标签 [routedata]
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.
model-view-controller - 访问通过查询字符串传递的路由值参数的一致方式
我在 global.asax 中定义了以下路线
我无法控制用户是使用“/useraccount/edit/1”还是“/useraccount/edit?id=1”访问页面。使用 UrlHelper Action 方法生成 url 时,如果 id 作为查询字符串参数传递,则 id 值不包含在 RouteData 中。
我正在寻找一种一致的方式来访问 id 值,无论使用哪个 url 来访问页面,或者自定义 RouteData 对象的初始化,以便它检查 QueryString 是否缺少路由参数并添加它们如果他们被发现。
c# - 如果我使用路由,如何访问 QueryString 参数
我将 ASP.NET 路由用于漂亮的 URL,但我无法访问 QueryStringParameters(只有 RouteData 值)。我正在使用带有 Web 表单的路由。
这是我的 RegisterRoutes (Global.asax) 的示例:
我使用此代码访问 Catalog.aspx 页面中的参数“step”:
但它返回null。
如果我不想从 RouteData 中获取 QueryString 参数“step”,如何访问它?
asp.net-mvc - 通过在 url 中调用控制器来路由/重定向到默认操作?
网址:本地主机:4835/登录
我想在不提及动作名称的情况下调用索引。
c# - 通过 RoteData 以通过 mvc 模型查看
我目前正在学习 asp.net 核心,因此尝试将 RouteData 添加到我的 mvc 模型并将其传递给视图,但是当我计算数据值 () 的数量时,它@Model.Data.Count
返回 0。我不想使用 ViewBag 或@ViewContext.RouteData.Values[key]
我的视图代码。
mvc 路由
我的行动方法
和我的看法
c# - Razor 页面 - Post 上的 RouteData 为空
我正在尝试学习 MVC 和 Razor 页面(我是 Web 开发的新手),并且由于 RouteData 为空,我在 Post 上遇到了 NullReferenceException。我在 Get 上没有这个问题。该页面正常加载,但只要我单击“过滤器”按钮,就会显示异常。我什至无法调试 OnPostAsync,因为它甚至没有进入方法。这是我的页面:
这是代码:
asp.net-mvc - 用于数据库多语言路由的 DateTime 自定义模型绑定器
我有一个带有自定义数据库路由的应用程序:
如您所见,我从数据库中获取页面,因此该站点的管理员可以更改页面的路由(www.site.com/page -> www.site.com/other-name)并且该站点使用新的姓名。
在数据库中,我检索页面的文化,因为每个页面都可能具有不同的文化,例如,如果您访问 www.site.com/page 它会获取英文内容,而如果您访问 www.site.com /pagina 它以西班牙语显示内容。
当用户可以使用日期过滤页面时,除了一个细节之外,这非常有效。
我必须使用自定义 ModelBinder 根据所选页面的语言将日期更改为正确的格式。
我的问题是
始终为空。当我第一次加载页面时,RouteData 获取了文化,但是在执行部分 ajax 请求时,所有值都消失了,并且 ModelBinder 给了我一个错误。
我不想将当前文化存储在会话变量中,因为我从数据库页面中读取了语言,并且只有 ajax 请求加载部分视图时才有问题。
有没有办法将当前页面的文化传递给 ModelBinder?
提前致谢。
c# - 在 IIS 中运行站点时从“CompiledAssembly”获取值时出错,在 Visual Studio 中正常
我正在运行一个 MVC 项目并使用 Json,我的代码在 Visual Studio 中运行时可以正常运行,然后我在 IIS 上有一个站点指向同一个文件夹,当从 IIS 站点执行 URL 时,我的代码没有执行与在 Visual Studio 中相同的操作。
在我的代码中,我有:
当我发送 RouteData.Values 时,会产生以下错误:
我目前正在使用Newtonsoft.Json, Version=11.0.0.0
任何想法发生了什么?IIS 没有 Visual Studio 的功能吗?
asp.net-mvc - ASP.NET MVC 将 ID 从控制器传递到视图
您好我正在尝试将来自控制器的 URL 中的 ID 传递给视图。我还传递了一个视图模型,其中包含两个具有数据库数据的模型。还有另一种方法吗?路由图已设置为发送 ID。
URLhttp://localhost:55147/Home/ViewProject/8
显然是 8 是项目的 ID,但它似乎没有得到这个。我通过 URL.Action 将 ID 传递给 ViewProject 控制器函数,其中 ID 通过另一个页面上的参数传递。
这是我的控制器:
这是我的观点:
我的多数据模型包含:
asp.net-web-api - Web API:如何从 HttpContext 读取动作属性和参数
在普通课堂上,我需要阅读以下内容HttpContext
:
控制器和动作名称
动作的属性(我可以通过
HttpActionContext.ActionDescriptor.GetCustomAttributes<type>()
但在这里我没有HttpActionContext
- 我只有HttpContext
)阅读论点(例如
actionContext.ActionArguments["paramName"]
,但又一次 - 我只有一个HttpContext
)
它不是动作过滤器,也不是控制器类。但是,我可以访问HttpContext
.
c# - 如何从 url 访问当前路由参数并在 asp.net 视图页面上引用它
我刚刚做了一条新路线:
该路线运行良好,但我不知道如何引用我当前所在的“id”,因此我可以在我的“详细信息”视图页面上显示路线上所说的“id”的正确信息。
对于更多上下文,我有我的基本“示例”页面,我在其中显示来自数据库的用户,每个用户都有一个与他们关联的“ID”,当他们的名字被点击时,它会抓取所说的“ID”并转到 /example/ details/{user id I just clicked}(这可行)现在我需要知道如何显示所述路线的用户信息。
控制器:
看法: