Ejecute la tarea con CurrentCulture establecido en el creador de la tarea CurrentCulture
Tengo una aplicación donde usamos Tareas. También modificamos cultureInfo (usamos el idioma EN-US, pero mantenemos el formato de fecha / número), y usamos .Net 4.0.
La aplicación tiene muchos hilos y tareas, y tenemos una fábrica para la creación de tareas / hilos.
Para el subproceso, tenemos el siguiente código, para garantizar que cada subproceso se inicie con la CurrentCulture correcta:
//This is basically only the constructor, but it describe well how we create the Thread:
public MonitoredThread(ThreadStart threadStart, string name, bool isBackground = false)
{
m_threadStart = threadStart;
m_name = name;
m_isBackground = isBackground;
Thread = new Thread(ThreadWorker)
{
Name = name,
IsBackground = isBackground,
CurrentCulture = CustomCultureInfo.CurrentCulture,
CurrentUICulture = CustomCultureInfo.CurrentCulture
};
}
Pero para las tareas, no sé cómo implementar este tipo de mecanismo:
public static Task ExecuteTask(Action action, string name)
{
MonitoredTask task = new MonitoredTask(action, name);
return Task.Factory.StartNew(task.TaskWorker);
}
¿Alguna idea?