2009-10-08 124 views
0

我有這樣一段代碼在cs文件在ASP.NET MVC應用程序:ASP.NET MVC IIS問題

HtmlTableCell r2c1 = new HtmlTableCell(); 
r2.Cells.Add(r2c1); 
r2c1.ColSpan = 2; 
r2c1.Style.Add("font", "1px arial"); 
r2c1.Style.Add("height", "10px"); 
r2c1.Style.Add("background-image", "url(/Content/Images/pagebgbottomwhite.jpg)"); 
r2c1.Style.Add("background-repeat", "repeat-x"); 

該工程確定在當地,但是當我部署使用IIS 5我我的應用程序看不到那張照片。

如何更改URL的格式以便我可以看到它?

+0

什麼是根虛擬目錄? – 2009-10-08 14:16:08

+0

這將是D:\部署\,我在這裏得到了/Content/Images/pagebgbottomwhite.jpg – gigi 2009-10-08 14:20:22

+0

你可以直接瀏覽圖像嗎? – JonoW 2009-10-08 14:32:52

回答

1

首先,您不希望在您的演示者中擁有這種類型的代碼。

至於URL格式,請嘗試Server.MapPath("~/Content/Images/pagebgbottomwhite.jpg");。並確保這個文件確實是它應該在的地方。

+0

如果我使用HttpContext.Current.Server.MapPath(「〜/ Content/Images/pagebgbottomwhite.jpg」));它doens;工作,不用iis部署 – gigi 2009-10-08 14:30:54

+0

@吉吉:你什麼意思是「不起作用」? – 2009-10-08 14:35:19

0

你真的應該使用CSS並定義一個具有這些屬性的類。然後,url將與站點中CSS文件的位置相關:url(../ Images/pagebgbottomwhite.jpg) - 假定您的css文件位於Images的同級目錄中。然後你會將CSS類應用到你的元素。

我也同意Anton的說法,使用MVC,這個代碼不應該在你的控制器/模型中,而應該在視圖中 - 在這種情況下你不會使用HtmlTableCell。在這種情況下,使用純CSS,只需要在表格中創建正確的行。

<tr><td class="bottom-row" colspan="2"></td></tr> 
0

確認已部署此文件(/Content/Images/pagebgbottomwhite.jpg)。它是否設置爲不復制或者在部署中是否被留下。

+0

我可以看到部署文件夾中的文件 – gigi 2009-10-08 14:31:24