public async Task <IActionResult> RandomAsset() { Console.WriteLine($"/pollinator/atom/randomAsset{Request.QueryString}"); string functionString = Request.Query["asset.function"]; SporeServerAsset[] assets = null; // make sure we can parse the function string if (Int64.TryParse(functionString, out Int64 function)) { // we only support modeltypes for now, // TODO: support archetypes/herdtypes if (Enum.IsDefined(typeof(SporeModelType), function)) { var user = await _userManager.GetUserAsync(User); assets = await _assetManager.GetRandomAssetsAsync(user.Id, (SporeModelType)function); } else { Console.WriteLine($"unsupported randomAsset function: {function}"); } } return(AtomFeedBuilder.CreateFromTemplate( new RandomAssetTemplate(assets) ).ToContentResult()); }