Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
c#-ICO反编译器、动态代码和静态_C#_Static_Compilation - Fatal编程技术网

c#-ICO反编译器、动态代码和静态

c#-ICO反编译器、动态代码和静态,c#,static,compilation,C#,Static,Compilation,可以说,我有一个系统可以“动态”编译和执行c#代码。静态类用于保存系统内的配置数据 如果我从“即时编译代码”中访问静态类,则一切正常 但是,如果我从“动态编译代码”中访问静态类,然后尝试访问“动态编译代码”之外的相同静态类,则静态类中的所有配置数据都已丢失。几乎就像它被重新鉴定过一样 “即时编译代码”在同一应用程序域中运行,如果这有区别的话 有人能解释为什么会发生这种情况吗?(从编译代码中访问静态文件会重置其配置数据) 最好的 BennyC代码中的static与C代码中的static不同 我想你

可以说,我有一个系统可以“动态”编译和执行c#代码。静态类用于保存系统内的配置数据

如果我从“即时编译代码”中访问静态类,则一切正常

但是,如果我从“动态编译代码”中访问静态类,然后尝试访问“动态编译代码”之外的相同静态类,则静态类中的所有配置数据都已丢失。几乎就像它被重新鉴定过一样

“即时编译代码”在同一应用程序域中运行,如果这有区别的话

有人能解释为什么会发生这种情况吗?(从编译代码中访问静态文件会重置其配置数据)

最好的

Benny

C代码中的static与C代码中的static不同

我想你想要一个单身汉

    public sealed class Clazz
    {
        private readonly static Clazz _instance = new Clazz();

        public static Clazz Instance  { get { return _instance; } }

        static Clazz { /* Required for lazy init */ }

        private Clazz()
        {
            // implementation here
        }
    }
它保证在AppDomain中始终存在一个类实例


如果您正在一个不同的AppDomain中加载动态编译的代码,并且您想要一个跨AppDomain的单例,那么也有解决方案(Google是您的朋友)。

defalut配置来自于任何执行代码的程序,因此作为其他应用程序的一部分运行时也会运行。它是使用“动态编译代码”?#重新运行:代码作为另一个应用程序的一部分执行。它允许在系统基础上进行保管-就像插件一样。#jgauffin静态类已经编译,并且仅被“动态”代码引用。这是否意味着从“动态”中访问静态时,静态被重新初始化“密码?无论如何,谢谢你给我时间,我会尝试上面的方法并反馈我的结果。谢谢你,奇索!