我希望通过thousand separator来格式化模型的数据,这些数据在Datarow中,并且不能使用带有2个参数的toString()(如我的链接所示) )在一个物体上。
我认为我必须将Datarow解析为int然后将此int解析为字符串(使用toString(" n",nfi)),但我的代码不起作用。
类型' System.FormatException'的例外情况发生在mscorlib.dll中但未在用户代码中处理 附加信息:输入字符串的格式不正确。
示例:listRow.Add(Convert.ToInt64(row["ENTITE"]).ToString("n", nfi));
数据:
这是我模特的代码:
dac = new SqlDataAdapter(sql, cn);
dsc = new DataSet();
dac.Fill(dsc, "histo");
List<List<string>> listHisto = new List<List<string>>();
StringBuilder output = new StringBuilder();
foreach (DataRow row in dsc.Tables["histo"].Rows)
{
CultureInfo.GetCultureInfo("fr-fr");
NumberFormatInfo nfi = (NumberFormatInfo)
CultureInfo.InvariantCulture.NumberFormat.Clone();
nfi.NumberGroupSeparator = " ";
List<string> listRow = new List<string>();
listRow.Add(Convert.ToInt64(row["ENTITE"]).ToString("n", nfi));
listRow.Add(Convert.ToInt64(row["M01"]).ToString("n", nfi));
listRow.Add(Convert.ToInt64(row["M02"]).ToString("n", nfi));
listRow.Add(Convert.ToInt64(row["M03"]).ToString("n", nfi));
listRow.Add(Convert.ToInt64(row["M04"]).ToString("n", nfi));
listRow.Add(Convert.ToInt64(row["M05"]).ToString("n", nfi));
listRow.Add(Convert.ToInt64(row["M06"]).ToString("n", nfi));
listRow.Add(Convert.ToInt64(row["M07"]).ToString("n", nfi));
listRow.Add(Convert.ToInt64(row["M08"]).ToString("n", nfi));
listRow.Add(Convert.ToInt64(row["M09"]).ToString("n", nfi));
listRow.Add(Convert.ToInt64(row["M10"]).ToString("n", nfi));
listRow.Add(Convert.ToInt64(row["M11"]).ToString("n", nfi));
listRow.Add(Convert.ToInt64(row["M12"]).ToString("n", nfi));
listRow.Add(Convert.ToInt64(row["TT"]).ToString("n", nfi));
listHisto.Add(listRow);
}
list.Add("histo", listHisto);
DataTable dtc = dsc.Tables["histo"];
我的观点代码:
@{
List<List<string>> listHisto = ViewBag.ListHisto;
bool isClassSuccess = true;
string classLigne;
foreach (List<string> item in listHisto)
{
if (isClassSuccess)
{
classLigne = "class=warning";//jaune clair
isClassSuccess = false;
}
else
{
classLigne = "class=success";//vert clair
isClassSuccess = true;
}
@:<tr @classLigne>
foreach (string row in item)
{
<td>@row</td>
}
@:</tr>
}
提前感谢您的帮助