我的Silverlight 4應用程序託管在ASP.NET MVC 2 Web應用程序中。當我使用Internet Explorer 8瀏覽時,它工作正常。但Google Chrome(版本5)無法找到ASP.NET控制器。具體而言,以下ASP.NET控制器可以與Chrome和IE一起使用。Google Chrome客戶端的ASP.NET MVC路由問題
//[OutputCache(NoStore = true, Duration = 0, VaryByParam = "None")]
public ContentResult TestMe()
{
ContentResult result = new ContentResult();
XElement response = new XElement("SvrResponse",
new XElement("Data", "my data"));
result.Content = response.ToString();
return result;
}
如果我取消[OutputCache]屬性的註釋,那麼它可以在IE中使用,但不能在Chrome中使用。此外,我使用自定義的模型與控制器結合,因此,如果我寫了以下內容:
public ContentResult TestMe(UserContext userContext)
{
...
}
它也可以與IE瀏覽器,但同樣無法與Chrome這給了我錯誤說資源沒有被發現。當然,我將IIS 6配置爲通過aspnet_isapi.dll處理所有請求,並且我在Application_Start()方法內的Web應用程序的Global.asax中註冊了自定義模型聯編程序。 有人可以解釋我可能是什麼原因?謝謝。
謝謝codeka。提琴手岩石。我發現了這個問題;谷歌瀏覽器在請求頭(編碼URL)中放入「Content-Type:application/x-www-form-urlencoded」,但IE不這樣做。因此,下一個問題是如何在Chrome中禁用網址編碼。 – synergetic 2010-06-15 08:22:55