我在cshtml视图中有一个元素,并生成可生成随机颜色的代码。无论我尝试什么,我都无法使其正常工作。完全使用@符号可删除color属性的突出显示(我假设这是一个指示符,将无法使用)
@using(//using code for accessing database)
{
//code to make query
Random rnd = new Random();
Color randomColor = Color.FromArgb(rnd.Next(256), rnd.Next(256), rnd.Next(256));
//other code
//displaying information
<p style="color: @randomColor">@db.item</p>
}
最佳答案
首先,将color调用为字符串将返回类似“ Color [A = 255,R = 6,G = 86,B = 171]”的内容,因此它将不起作用。
相反,您需要获取十六进制表示形式或使用RGB声明
现在,假设您尝试输出p标签,当您位于代码块中时,可以使用@ Html.Raw
@Html.Raw("<p style='color: #" + randomColor.R.ToString("x2") + randomColor.G.ToString("x2") + randomColor.B.ToString("x2") + "'>" + db.item + "</p>");
使用rgb,您可以执行以下操作:
@Html.Raw("<p style='color: rgb(" + randomColor.R + "," randomColor.G "," + randomColor.B +")'>" + db.item + "</p>");