Mde*_*dev 2 c# sql-server timespan
我有一个有minutes.seconds.milliseconds的字符串.我需要将其转换为符合SQL Server的类型值TIME.
这是我到目前为止所尝试的,但我仍然得到格式异常
var a = "1.39.26";
var ab = a.Split('.');
var minutes = ab[0];
var seconds = ab[1];
var ms = ab[2];
string time = minutes + ":" + seconds + "." + ms;
var one = TimeSpan.ParseExact(time, "mm:ss.FF",CultureInfo.InvariantCulture);
var two = DateTime.ParseExact(time, "mm:ss.FF",
CultureInfo.InvariantCulture
);
Run Code Online (Sandbox Code Playgroud)
也试过了
string time = DateTime.Now.Date.ToString() + minutes + ":" + seconds + "." + ms;
var one = TimeSpan.ParseExact(time, "dd-MM-yyyy mm:ss.FF", CultureInfo.InvariantCulture);
var two = DateTime.ParseExact(time, "dd-MM-yyyy mm:ss.FF", CultureInfo.InvariantCulture);
Run Code Online (Sandbox Code Playgroud)
我们无法知道您的DateTime.Now.Date.ToString()返回信息,因为它取决于您的CurrentCulture设置,但您可以直接将此字符串解析TimeSpan为;
var a = "1.39.26";
TimeSpan ts = TimeSpan.ParseExact(a, "m\\.ss\\.ff", CultureInfo.InvariantCulture);
Run Code Online (Sandbox Code Playgroud)
DateTime.Today如果您愿意,可以在此之后添加此值.
DateTime dt = DateTime.Today.Add(ts);
Run Code Online (Sandbox Code Playgroud)
但是由于在CLR方面TIME映射TimeSpan,我怀疑你想要这个.
进一步阅读;