後の1を取得し、私はこの問題を解決する方法がわからないダニMySQLの「TIME」 Dapperを使用して1000フィールドのTimeフィールドを使用して行をロードし、このPocoを何も変更せずに保存した場合は、同じ行を再ロードしてください。Timeフィールドは1001 Ticksになります。のTimeSpanは、私がDapperのに問題がある保存
私は間違っていますか?
編集:私は私の行を読み込む方法
:
私はそれを保存する方法var testobj = Db.Query<Test>("select * from Test where Id = @id", new {id = Id});
:
Db.Execute("replace into Test values (@Id,@Time)", testObj);
EDIT 2:
保存する前に、TimeSpanオブジェクト:
{15:22:24}
Days: 0
Hours: 15
Milliseconds: 0
Minutes: 22
Seconds: 24
Ticks: 553440000000
TotalDays: 0.64055555555555554
TotalHours: 15.373333333333333
TotalMilliseconds: 55344000.0
TotalMinutes: 922.4
TotalSeconds: 55344.0
と保存後:
{15:22:25}
Days: 0
Hours: 15
Milliseconds: 0
Minutes: 22
Seconds: 25
Ticks: 553450000000
TotalDays: 0.64056712962962958
TotalHours: 15.37361111111111
TotalMilliseconds: 55345000.0
TotalMinutes: 922.41666666666674
TotalSeconds: 55345.0
あなたはダニ5534.4億と5534.5億
EDIT 3になることがわかります。
が、私はこのように私のテストクラスとハンス・チップを使用します。
public class Test
{
public long Id { get; set; }
private TimeSpan? _time;
public TimeSpan? Time
{
get
{
if (_time.HasValue)
return TimeSpan.FromTicks((long)Math.Floor(_time.Value.Ticks/100000000d) * 100000000);
return _time;
}
set { _time = value; }
}
}
と、それは動作しますが、それはまだREPROへの私の試み
どのように時間を読み込みますか? –
@FᴀʀʜᴀɴAmy私の質問 – Baptiste
を更新しました申し訳ありませんが、行がID = 1と時間= 1000ティックでロードされている、私はこの行を保存して再ロードして今すぐTime = 1001 Ticks – Baptiste