C# 来自Url Slug的MVC动态视图

C# 来自Url Slug的MVC动态视图,c#,asp.net-mvc-2,C#,Asp.net Mvc 2,我正在构建我的第一个.NETMVCWeb应用程序,喜欢它的简单性和灵活性。然而,我遇到了第一个绊脚石 我有一个项目列表,如果您未登录,您将看到一个预览链接,我希望该链接指向以下内容: /preview/unique-slug 视图应该允许我显示数据库中的内容(基本上是一个详细信息页面) 我不知道该怎么做,也不知道我应该用谷歌搜索什么,因为我得到的结果很差 有什么建议吗?这是我过去的做法: 您需要在数据库中存储一列,其中包含每个项所引用的slug。然后,创建如下所示的管线: routes.Map

我正在构建我的第一个.NETMVCWeb应用程序,喜欢它的简单性和灵活性。然而,我遇到了第一个绊脚石

我有一个项目列表,如果您未登录,您将看到一个预览链接,我希望该链接指向以下内容:

/preview/unique-slug
视图应该允许我显示数据库中的内容(基本上是一个详细信息页面)

我不知道该怎么做,也不知道我应该用谷歌搜索什么,因为我得到的结果很差


有什么建议吗?

这是我过去的做法:

您需要在数据库中存储一列,其中包含每个项所引用的slug。然后,创建如下所示的管线:

routes.MapRoute("PreviewLink",
    "/preview/{slug}",
    new { controller = "Preview", action = "Details" }
);
因此,这将调用
PreviewController
上的
Details
方法,如下所示:

class PreviewController : Controller
{
    public ActionResult Details(string slug)
    {
        var model = db.GetItemBySlug(slug);
        return View("Details", model);
    }
}
基本上,您将在操作方法中将slug作为字符串获取,在数据库中查询具有相应slug的项,并显示它。本质上,我们只是将整数
id
替换为字符串
slug


希望这能帮你解决问题

你哪一点有问题?生成URL?对此有何反应?