[英]MVC3 / C# - Invalid Cast Exception - Specified cast is not valid
有誰知道如何解決這個錯誤?
指定演員表無效。
描述:執行當前Web請求期間發生未處理的異常。 請查看堆棧跟蹤以獲取有關錯誤及其源自代碼的位置的更多信息。
異常詳細信息:System.InvalidCastException:指定的強制轉換無效。
這是它破壞的代碼行 -
var id = (int)httpContext.Request.RequestContext.RouteData.Values["id"];
httpContext.Request.RequestContext.RouteData.Values["id"]
可能是一個字符串,因此你需要解析它:
var idStr=(string)(httpContext.Request.RequestContext.RouteData.Values["id"]);
int id;
if(int.TryParse(idStr, out id))
{
//w00t
}
您的值httpContext.Request.RequestContext.RouteData.Values["id"]
可能沒有等效的int。
如果它是一個字符串,就像消費者說的那樣,你會試試,
var id = int.Parse("httpContext.Request.RequestContext.RouteData.Values["id"]);
intellisence可能會告訴你什么類型:
httpContext.Request.RequestContext.RouteData.Values["id"]
就像你輸入它一樣。 您還可以在調試器的“監視”選項卡中找到
首先調用ToString()
然后將其parse
to int
int.Parse(Url.RequestContext.RouteData.Values["id"].ToString())
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.