【问题标题】:reload the sourcecode of a C# app on command在命令上重新加载 C# 应用程序的源代码
【发布时间】:2009-10-20 04:31:32
【问题描述】:

我有一个C#应用程序,我想能够制作一个系统,以便在程序中显示应用程序的源代码。到目前为止足够简单吧?

好吧,我需要他们能够编辑该代码,就像调试中断选项一样...然后加载新代码并继续而不停止程序。所以我的问题是,当这个应用程序加载它的几千行代码时,它需要很长时间。加载后,它需要进行数百次操作才能允许用户在第一次加载时输入。还有,它里面有一个 tcp 客户端,它不会断开连接是非常重要的。

我希望人们能够编辑源代码、单击按钮并等待几秒钟,然后插入新代码并“重新散列”可以说,而不必破坏应用程序的整体功能。

我在可能的情况下查看详尽的代码示例,并输入天气是否可能

~谢谢

【问题讨论】:

  • 您是在问如何按照您所说的去做,或者这是您针对某种要求提出的解决方案,您想知道它是否可行?如果是第二种,那么还有其他方法可以走。例如,将应用程序拆分为单独的应用程序 - 一个用于执行启动处理及其“数百个操作”,另一个用于运行用户代码。

标签: c#


【解决方案1】:

如果您想允许人们对您的程序进行任意更改,那将非常复杂。但是,如果您想让它们更改特定行为(例如重写计算算法),您可以查看 Microsoft.CSharp.CSharpCodeProvide as discussed here

【讨论】:

    【解决方案2】:

    我认为您不能这样做(更改 .net 应用程序而不重建它)但您可以随时加载和运行动态代码..

    有些人将plugins 与 Boo 一起使用,人们可以更改插件,这些插件可以随时由主应用程序加载。

    但我建议你看看 SilverLight 中的 Ruby 用法..

    这是完全不同的东西,但我正在阅读有关如何开始使用动态代码处理的内容:here

    【讨论】:

      猜你喜欢
      • 2014-06-17
      • 2012-11-30
      • 2015-12-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-10-14
      • 2012-03-20
      相关资源
      最近更新 更多