Используйте хранимые процедуры или параметризованные запросы.Это позволит вам передать объект C # datetime, и преобразование будет выполнено автоматически для вас.
Я бы предложил начать с SQLDataAdapter класса.Простым примером этого может быть:
using (SqlDataAdapter da = new SqlDataAdapter("SELECT * FROM MyTable WHERE myDate = @myDate", someSqlConnection)
{
da.SelectCommand.Paramaters.Add("@myDate", new DateTime());
DataTable dt = new DataTable();
da.Fill(dt);
}
Однако имейте в виду, что есть много разных способов достижения вашей цели.Исходя из вашего вопроса, я бы предположил, что вы создаете строки SQL и выполняете их для своей базы данных.Это считается плохой практикой по многим причинам (включая ту, которую вы описываете).Узнайте больше об ORM, таких как Entity Framework или NHibernate.