0

我有一個MVC 3應用程序,我想要不包含控制器或密鑰名稱的動態Url。一個很好的例子就是如果我有博客,並且用戶添加新帖子。動態MVC路由通過高效的數據庫查找刪除Id

假設用戶創建了一個稱爲後

我的博客文章

我有一個創建與進入數據庫的URL彈頭,並將其存儲的方法,所以我想要的網址是

/我 - 博客 - 後

這在現在的網址沒有控制或按鍵的名字嗎?如何通過MVC路由實現此目的?目前我正在通過將URL與/my-blog-post_1234這樣的ID進行匹配,並使用該ID作爲使用流暢的nhibernate的數據庫查找關鍵字來完成此操作,但是一旦我刪除了ID,我有點迷路了?

由於我仍然可以得到字符串/ slug,但這意味着我現在必須根據字符串'my-blog-post'進行SQL查找嗎?我讀過這個效率不高,可能會降低速度,其中一些標題可能會很長。

我聽說過人們在說自定義路由表的事情嗎?這會幫助我嗎?我想最主要的是以最快最有效的方式從數據庫中獲取數據。

任何幫助/指針非常感謝。

回答

1

MVC框架不會在這裏提供任何幫助。您的要求是通過slu query查詢,所以這就是您需要在數據庫中執行的操作。

您只需確保在數據庫中的此列上有索引,以確保查詢不需要執行表掃描。

0

聽起來像你真正想要的是文檔數據庫。再加上MVC。我會強烈推薦ravendb,