¿Hay alguna forma de determinar si la aplicación en ejecución es WinForms o Web en tiempo de ejecución?Determine si la aplicación es WinForms o WebForms
[Editar]
¿Existe en realidad un problema si me refiero tanto System.Web
y System.Windows.Forms
en mi biblioteca de clases?
[Resumen] (hasta ahora)
Lo que he aprendido hasta ahora:
HttpContext.Current
esnull
si se activa en un hilo asíncrono, por lo que no puede fiable utilizar en un ayudante método.HttpRuntime.Cache
realmente no ayuda, ya que no estoy buscando el contexto en caché en absoluto (¿o me falta algo aquí?).- por el contrario,
System.Reflection.Assembly.GetEntryAssembly()
parece devolvernull
en aplicaciones web, y no nulo en WinForms. ¿Debería darse por sentado? Debería haber más "hacks" como este, ¿cuál usar? - haciendo referencia a ambos
System.Web
ySystem.Windows.Forms
en una biblioteca auxiliar debe estar bien, de acuerdo con this thread.
¡Gracias! ¿Podría consultar también mi pregunta actualizada para obtener más detalles? – dummy
Como M. Smith ha escrito a continuación, HttpContext.Current es nulo cuando se realizan operaciones asíncronas, por lo que no siempre funciona. – dummy