3 回答

TA貢獻1895條經驗 獲得超3個贊
首先你必須解析然后獲取時間部分
var time = TimeSpan.Parse(staffItems.Rows[0]["TIME_DURATION"]);
var time2 = time.ToString(@"mm\:ss");
如果你想從 datarowextension 獲得它。您必須創建數據表并為“TIME_DURATION”列指定時間對象。您可以通過以下方法做到這一點:
using System;
using System.Data;
class Program
{
static void Main()
{
//
// Loop over DataTable rows and call the Field extension method.
//
foreach (DataRow row in GetTable().Rows)
{
// Get first field by column index.
int weight = row.Field<int>(0);
// Get second field by column name.
string name = row.Field<string>("Name");
// Get third field by column index.
string code = row.Field<string>(2);
// Get fourth field by column name.
DateTime date = row.Field<DateTime>("Date");
// Display the fields.
Console.WriteLine("{0} {1} {2} {3}", weight, name, code, date);
}
}
static DataTable GetTable()
{
DataTable table = new DataTable(); // Create DataTable
table.Columns.Add("Weight", typeof(int)); // Add four columns
table.Columns.Add("Name", typeof(string));
table.Columns.Add("Code", typeof(string));
table.Columns.Add("Date", typeof(DateTime));
table.Rows.Add(57, "Koko", "A", DateTime.Now); // Add five rows
table.Rows.Add(130, "Fido", "B", DateTime.Now);
table.Rows.Add(92, "Alex", "C", DateTime.Now);
table.Rows.Add(25, "Charles", "D", DateTime.Now);
table.Rows.Add(7, "Candy", "E", DateTime.Now);
return table;
}
}

TA貢獻1850條經驗 獲得超11個贊
下面的方法將 a 解析string為擴展方法TimeSpan中的 a 。DataRow
public static TimeSpan ExtractTimeData(this DataRow row, string column)
{
// check column exists in dataTable
var exists = row.Table.Columns.Contains(column);
if (exists)
{
// ensure we're not trying to parse null value
if (row[column] != DBNull.Value)
{
TimeSpan time;
if (TimeSpan.TryParse(row[column].ToString(), out time))
{
// return if we can parse to TimeSpan
return time;
}
}
}
// return default TimeSpan if there is an error
return default(TimeSpan);
}
你可以像這樣使用它:
TimeSpan time = row.ExtractTimeData("TIME_DURATION");
string timeString = time.ToString(@"h\:mm");
- 3 回答
- 0 關注
- 152 瀏覽
添加回答
舉報