2010-03-09 49 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

相关问题