Here’s a quick way to achieve a “random” sort using native Sitefinity widgets. This requires no custom code but is probably a completely “off label” use of the property involved. Moving on…
Locate the SortExpression field for the widget you want to modify. Using DynamicContent as an example, click “Edit” then click through to Advanced -> ControlDefinition -> Views -> DynamicContentMasterView. SortExpression can be found near the bottom of the list.
Once you’ve located the field, paste the following expression there.
DateCreated.ToString().Substring((DateTime.Now.Second % 10), 4)
This returns a slightly different string (each second) that Sitefinity can use to sort the content by. I only tested this on the DynamicContent and BlogPosts widgets but don't see any reason it wouldn't work on anything with a SortExpression.
Please, let me know if it works for you. Enjoy!