.net - license - jrebel trial
¿Hay algo como JRebel para.NET? (6)
JRebel es una herramienta para Java que puede intercambiar automáticamente nuevas versiones de clases a una JVM en ejecución. No solo se pueden cambiar las implementaciones de métodos, también es posible cambiar sus firmas, agregar nuevos o eliminar métodos existentes, y también agregar / eliminar campos. Lo único que no se puede hacer es permitir que la jerarquía de clases se modifique sobre la marcha. Es una gran ayuda para el desarrollo de aplicaciones web en particular.
¿Podría encontrar algo similar para .NET?
Bueno, existe una función de compilación desde VS 2005 que se llama "Editar y continuar". Puede echar un vistazo ... http://msdn.microsoft.com/en-us/library/ms379578(VS.80).aspx .
Creo que no es tan sofisticado como JRebel.
La reflexión está integrada en .NET y debería poder hacer la mayoría de esas cosas (escribir / modificar cosas en tiempo de ejecución).
No va a estar tan pulido y listo para las tareas como JRebel, pero nuevamente los dos marcos tienen estructuras diferentes para empezar. Puede no ser realista pensar en ellos como equivalentes.
En mi humilde opinión, la sustitución de tiempo de ejecución como una práctica estándar parece una buena forma de corromper el tiempo de ejecución para mí. Si necesita esta funcionalidad de intercambio en caliente, quizás sea mejor que elija un idioma interpretado en lugar de uno compilado.
Además, la sesión suele ser algo para evitar. Si tiene que usarlo para ASP.NET, puede usar algunos proveedores diferentes listos para usar en lugar de uno en proceso, o incluso usar perfiles en su lugar. Página de MSDN para la gestión del estado
No existe tal cosa en el mundo de .net ... no tan poderoso ... hay algo así como Editar y Continuar, pero esto es como "Reemplazar en caliente" en Java y nada más. El problema está en .net tiene el modelo completo de .dll (s) con sus versiones y dependencias entre dlls apuntando a una versión específica por lo que no es posible reemplazar dll sin reemplazar todo.
Una solución alternativa será algo así como compilar las clases, agregar toneladas de redireccionamientos de ensamblaje, de alguna manera descargar y cargar el dll antiguo, pero es realmente difícil.
Tenga en cuenta que en java después de implementar el "módulo" JSR, tal vez en java 9 no tengamos también JRebel.
No hay tal cosa para .Net todavía. Mientras tanto, puedes probar NCrunch ( http://www.ncrunch.net/ ), que está ejecutando tus pruebas en segundo plano y, en el momento en que rompes o pases una prueba, se informa en los resultados de la prueba, por No es necesario esperar para reconstruir y probar la ejecución, ya que está sucediendo en tiempo real.
Qué tal si
Re-JIT
https://channel9.msdn.com/Shows/Going+Deep/CLR-45-David-Broman-Inside-Re-JIT
Oh, bueno, eso no fue, pero tal vez útil de todos modos:
NGen resistente con parches específicos
ver https://channel9.msdn.com/Blogs/Charles/Surupa-Biswas-CLR-4-Resilient-NGen-and-Targeted-Patching
Hay Rebel.NET que es similar, pero esto requiere reconstruir los binarios y no puede cambiar el código durante la ejecución.