点击按钮从db获取随机id

omhiaaxx  于 2021-06-23  发布在  Mysql
关注(0)|答案(1)|浏览(301)

嗨伙计们(我是一个初学者,所以请放心)我有这个代码,搜索我的数据库,并提出了标题/艺术家和作品不错。我需要做一个按钮,当点击它带来了一个随机id从我的数据库。我四处找了找,但找不到有用的东西。想想出一个lamda表达式什么的。。。谢谢
控制器

public ActionResult Play(string searchTitle, string searchArtist, string shuffle)
{
    var media = from s in db.UploadTables select s;

    if (!string.IsNullOrEmpty(searchTitle))
    {
        media = media.Where(m => m.MediaTitle.Contains(searchTitle));
    }

    if (!string.IsNullOrEmpty(searchArtist))
    {
        media = media.Where(m => m.MediaArtist.Contains(searchArtist));
    }

    return View(media);
}

看法

@using (Html.BeginForm())
{
    <p>
        Song Name: @Html.TextBox("searchTitle")    
        <input type="submit" value="Search" />
        Artist: @Html.TextBox("searchArtist")    
        <input type="submit" value="Search" />
        @Html.TextBox("shuffle")    
        <input type="submit" value="Search" />
    </p>
    <hr />
}
a9wyjsp7

a9wyjsp71#

Random rand = new Random();
int total = db.UploadTables.Count();
var randomId = db.UploadTables.Skip(rand.Next(total)).First().Id;
``` `Random.Next(Int32 maxValue)` 会得到一个介于 `0` 以及 `maxValue-1` . `IQueryable<TSource>.Skip(this IQueryable<TSource>, int count)` 将跳过 `count` 条目。
那你就走吧 `First()` 在剩下的条目和tadaa中,您可以访问 `Id` 现场。
显然,这只是一种方法,正如其他人所说,有很多方法可以做到这一点。

相关问题