go to post Paul Hegel · Oct 16, 2019 You can convert the DateTime to a Time String and send that in the insert or update strings. Here is the Cache Class used in my example: Class User.TestTimeData Extends %Persistent { Property TimeFormat As %String [ Required ]; Property TimeTest As %Time [ Required ]; } Here is the C# .Net Core Console App code example: using System; using System.Data.Odbc; namespace TestCacheTimeType { class Program { static void Main(string[] args) { Console.WriteLine("Hello World!"); DateTime dateTime = DateTime.MinValue.AddHours(22).AddMinutes(10); string timeLong = dateTime.ToLongTimeString(); InsertRecord("ToLongTimeString", timeLong); string timeShort = dateTime.ToShortTimeString(); InsertRecord("ToShortTimeString", timeShort); string timeFormatted = dateTime.ToString("HH:mm:ss"); InsertRecord("ToString"HH:mm:ss)"", timeFormatted); Console.WriteLine("Press any key to exit...."); Console.Read(); } static void InsertRecord(string TimeFormat, string TimeToInsert) { Console.WriteLine("{0}: {1}", TimeFormat, TimeToInsert); using (OdbcConnection connection = new OdbcConnection("DSN=IRISHealth-WebDev; UID=; PWD =; ")) { string insertSQL = "Insert into SQLUser.TestTimeData(TimeFormat, TimeTest) values('" + TimeFormat + "', '" + TimeToInsert + "');"; // inserts a new row in the source table. OdbcCommand command = new OdbcCommand(insertSQL, connection); // Open the connection and execute the insert command. try { connection.Open(); command.ExecuteNonQuery(); } catch (Exception ex) { Console.WriteLine(ex.Message); } } } } }