我完全不熟悉C#,所以請耐心等待。C#字符串格式最好的重載方法匹配錯誤
private static string GetFormattedValue(string dataType, dynamic cellValue)
{
string formattedCellValue = string.Empty;
if (cellValue == null)
cellValue = DBNull.Value;
if (dataType == "STRING")
{
formattedCellValue = string.Format("'{0}',", cellValue);
}
else if (dataType == "NUMBER")
{
if (string.IsNullOrEmpty(Convert.ToString(cellValue)))
cellValue = 0;
formattedCellValue = string.Format("'{0}',", cellValue.ToString("F17"));
}
else if (dataType == "DATE")
{
formattedCellValue = string.Format("'{0}',", cellValue);
}
else
{
formattedCellValue = string.Format("'{0}',", cellValue.ToString("F17"));
}
return formattedCellValue;
時dataType
是NUMBER和cellValue
是一個整數,我得到一個錯誤,指出: 「爲string.ToString(System.IFormatProvider)的最佳重載的方法匹配具有一些無效參數」
cellValue
通常是非常小的數字,如果沒有「F17」,將作爲科學記數法返回(這會導致另一個錯誤),但也會導致上述錯誤的整數。
這不是我的代碼,我只是運行它,知道足夠的一步通過它。任何想法如何確定cellValue
是否可讀取以確定是否爲整數?或者其他更好的建議?