2010-03-09 85 views
0

我有一個控制器方法,返回一個jSON對象,並在一個調用情況下,它的工作原理和在另一個調用情況下,它不起作用。當我的瀏覽器中的URL是這樣的:

http://localhost:65247/Client - 它的工作原理。

但是,當我的網址是這樣的:

http://localhost:65247/Client/UserAdmin?id=6 - 它不工作

簡而言之,客戶有用戶。從客戶端內部,我希望工作在一個特定的用戶(這是UserAdmin視圖)。在這種情況下,客戶端ID是6.從Id = 6啓動的UserAdmin視圖中,我希望從下拉列表中選擇一個用戶。這個想法是使用javascript和$ .getJSON爲特定用戶提取數據,以便不必刷新整個頁面。我在應用程序的其他部分使用這種方法。我能看到的唯一區別是瀏覽器中的URL。它會出現通過'?'參數的存在正在把事情搞得一團糟。

任何想法??

在此先感謝。

約翰

回答

0

這可能是一個路由問題。你的url需要匹配一條工作路線(否則框架不知道要執行什麼動作)。如果你只有默認路由,你的網址應該是:http://localhost:65247/Client/UserAdmin/6

我的建議是使用內置的助手來生成你的網址。那麼如果你改變你的路線,你不需要改變任何東西。您可以使用url傭工像這樣:

<%=Url.Action("ActionName", "ControllerName")%> 
+0

賓果......就是這樣。 json調用只有Admin/GetUser。正確的調用是/ Admin/GetUser。當呼叫在管理員控制器的上下文中時,第一個/不是必需的。但是,在這種情況之外,它變得有必要。幸運的是,/始終適用於Admin環境中。 謝謝! John – user145110 2010-03-09 15:22:02