Switch to Typed (2sxc 16+) Selected: Dynamic (Razor14 or below)
Working with Page URL Parameters
The following code will use a value from the url querystring. There are various ways to pick it up, but we recommend the cross-platform API which works in Dnn and Oqtane.
- Pro mode Cross-Platform (Dnn and Oqtane):
@MyPage.Parameters["id"]
- Older mode Cross-Platform (Dnn and Oqtane):
@CmsContext.Page.Parameters["id"]
- This would only work in Dnn:
@Request.QueryString["id"]
Usually you would have somepagename?id=27
in the url, and then using @MyPage.Parameters["id"]
/ @CmsContext.Page.Parameters["id"]
you would pick it up.
But with DNN, there is an additional processing that happens, as DNN tries to create nice URLs resulting in somepagename/id/27
. But on the server, this is still treated as the ?id=27
, so you still use the same method to access it.
Note that this sample uses Link.To(parameters: object.Add/Remove)
to just modify the existing url, since this tutorial uses other url-parameters to pick the snippets to show.
⬇️ Result | Source ➡️
FYI: The current url parameters are
tut=basics-linking&variant=dyn
Links to test the functionality
Reading the url parameters
- URL contains
sort
w/null-check:
False - URL contains
sort
using Razor.Blade (this will also return false, if sort is empty):
False - Sort value from URL:
-
Put
sort
in a variable for further use:
-
Get sort from url, or if it doesn't exist,
use a default value
descending
(uses Razor.Blade): descending