我對ASP.NET MVC3有點新鮮。 我有一個CSHTML文件ASP.NET MVC 3在cshtml文件中使用C#代碼
@grid.GetHtml(
htmlAttributes: new { id = "grid" },
tableStyle: "grid",
headerStyle: "header",
rowStyle: "row",
footerStyle: "footer",
alternatingRowStyle: "altRow",
columns: grid.Columns(
grid.Column(header: "", format: @<text><input name="Checked" type="checkbox" value="@item.Key" /></text>, style: "CheckboxColumn", canSort: true),
grid.Column("Name", "Name"),
grid.Column("Address", "Address"),
grid.Column("City", "City"),
grid.Column("PhoneNumber", "Phone Number"),
grid.Column("", format: (item) =>
{
if (item.ID.Length > 0)
{
//CODE GOES HERE
return Html.Raw(string.Format("<text><img src=\"{0}\" alt=\"Image\" class=\"ToolTip\" title=\"ID # {1} <br> \" /></text>", Url.Content("~/images/coupled.png"), @item.ID.ToString()));
}
else
{
return Html.Raw("<text></text>");
}
}),
))
我要的是在//CODE GOES HERE
部分寫C#代碼的代碼。以便根據項目ID更改Url.Content("~/images/coupled.png")
。
所以基本上我想是這樣的:
string URLOfPic;
if(item.ID > 1000)
{
URLOfPic="~/images/aaa.png
}
else
{
URLOfPic="~/images/bbb.png
}
最後使用Url.Content(URLOfPic)
那麼,如何可以使用C#代碼的網頁?
我希望我很清楚。 非常感謝您的任何幫助
PS:我希望它是一個C#代碼,而不是一個JavaScript或其他任何東西。 在普通的ASP.NET中,我可以使用後面的代碼來完成它。但在MVC3我不知道如何
你試過編寫代碼嗎?如果你這樣做會怎樣?你有錯誤嗎?錯誤說的是什麼?什麼沒有發生,你認爲應該發生? – 2012-04-04 21:05:08
創建一個輔助方法。 http://weblogs.asp.net/scottgu/archive/2011/05/12/asp-net-mvc-3-and-the-helper-syntax-within-razor.aspx – CrazyDart 2012-04-04 21:06:00