我使用基于实体的脚手架(CRUD)制作了razorpages。
详细信息、编辑和删除页面被交给一个对象进行操作。如何获得此对象?我知道对象的ID在url中。
我想使用MyClass.someMethod()
将@Html.DisplayFor(model => model.MyClass.someField)转换为@Html.DisplayFor(model => model.MyClass.someMethod())并不好,因为在此上下文中不允许使用方法。
在我的PageModel中,我看到:
public async Task<IActionResult> OnGetAsync(string id)我想做的是:
@{MyClass mc = model.MyClass[id];
mc.callSomeMethod()}如何获取此id?或者有没有其他方法来执行someMethod()?
发布于 2020-08-25 20:37:41
从ModelPage.OnGetAsync(string id)中,我将id复制到一个可访问的外部字段。它很难看,但它是有效的。
如果有人知道更好的解决方案,请告诉我。
发布于 2020-08-29 02:18:07
如果id在URL中,您应该可以在PageModel中访问它,如下所示:
HttpContext.Request.Query["id"]在您的案例中:
@{MyClass mc = HttpContext.Request.Query["id"];
mc.callSomeMethod()}https://stackoverflow.com/questions/63577734
复制相似问题