Cómo obtener el valor entero del día de la semana


¿Cómo obtengo el día de una semana en formato entero? Sé que toString devolverá sólo una cuerda.

DateTime ClockInfoFromSystem = DateTime.Now;
int day1;
string day2;
day1= ClockInfoFromSystem.DayOfWeek.ToString(); /// it is not working
day2= ClockInfoFromSystem.DayOfWeek.ToString(); /// it gives me string
Author: user2771704, 2012-02-08

8 answers

Use

day1 = (int)ClockInfoFromSystem.DayOfWeek;
 135
Author: Joe,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-02-08 18:17:16
int day = (int)DateTime.Now.DayOfWeek;

Primer día de la semana: domingo (con un valor de cero)

 61
Author: peroija,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-01-22 21:32:28

Si desea establecer el primer día de la semana a lunes con valor entero 1 y domingo con valor entero 7

int day = ((int)DateTime.Now.DayOfWeek == 0) ? 7 : (int)DateTime.Now.DayOfWeek;
 51
Author: Martin Sansone - MiOEE,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-12-30 02:49:06
day1= (int)ClockInfoFromSystem.DayOfWeek;
 6
Author: FiveTools,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-02-08 18:17:50

Prueba esto. Funcionará bien:

int week = Convert.ToInt32(currentDateTime.DayOfWeek);
 4
Author: RaviKant Hudda,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-08-18 13:22:10

La forma correcta de obtener el valor entero de una enumeración como DayOfWeek como una cadena es:

DayOfWeek.ToString("d")
 2
Author: Rob Sedgwick,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-12-24 09:41:32
DateTime currentDateTime = DateTime.Now;
int week = (int) currentDateTime.DayOfWeek;
 0
Author: Michael Murphy,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-03-11 21:26:35

Otra forma de obtener lunes con valor entero 1 y domingo con valor entero 7

int day = ((int)DateTime.Now.DayOfWeek + 6) % 7 + 1;
 0
Author: Ruslan Hayduk,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-02-04 00:52:05