2010-05-01 35 views
1

我有一個問題,在視圖Details和ImageController中顯示圖像表單數據庫。在視圖中我有:從sql數據庫加載後顯示圖像

img src=Url.Action("GetFile","Image", new {id= Model.id}) 

和控制器:

public FileContentResult GetFile(int idl) 
{ 
    //int idl = 32; 
    SqlDataReader rdr; byte[] fileContent = null; 
    ........... 
    return File(,,); 
} 

當視圖被調用時,函數的GetFile它只是將無法正常工作。但是,如果我切出參數int id1,並將其實例化爲一個變量,它確實有效。

public FileContentResult GetFile() 
{ 
    int idl = 32; 
    SqlDataReader rdr; byte[] fileContent = null; 
    ........... 
    return File(,,); 
} 

爲什麼?

回答

2

我覺得你id值是沒有得到約束,因爲你的動作參數是idl和DataBinder的沒有一個路線值綁定到idl參數。

你看,你的動作參數應該匹配路由值。我猜你只是使用默認路線{controller}/{action}/{id} - 如果是這種情況,那麼你需要改變你的GetFile行動,使參數爲id而不是idl。否則,你需要創建自己的路線,看起來像`Image/GetFile/{idl}。

精明?

HTHS,
查爾斯

+0

不能相信我錯過了:d 我認爲這必須是正確的答案:) – 2010-05-02 07:00:10

+0

非常感謝查爾斯 - 你是對的。 – MIR 2010-05-03 19:16:30

+0

很酷。如果答案正確,請將此答案標記爲正確:-) – Charlino 2010-05-03 20:43:15