Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/285.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# 为什么AppDomain.ShadowCopyFiles是字符串?_C#_.net_Base Class Library_Shadow Copy - Fatal编程技术网

C# 为什么AppDomain.ShadowCopyFiles是字符串?

C# 为什么AppDomain.ShadowCopyFiles是字符串?,c#,.net,base-class-library,shadow-copy,C#,.net,Base Class Library,Shadow Copy,Net中有影子复制功能,可以通过复制程序集来保留文件锁定。 有两个属性: 使用AppDomainSetup的 将其存储在内部字符串[] AppDomainSetup具有用于存储配置的字符串值[]字段。对我来说奇怪的是,AppDomainSetup.ShadowCopyFiles是一个字符串属性,我们需要设置“true”或“false”而不是realbool类型 下面是AppDomainSetup中该属性的实现: public string ShadowCopyFiles { get {

Net中有影子复制功能,可以通过复制程序集来保留文件锁定。 有两个属性:

  • 使用AppDomainSetup的
  • 将其存储在内部
    字符串[]
  • AppDomainSetup
    具有用于存储配置的
    字符串值[]
    字段。对我来说奇怪的是,
    AppDomainSetup.ShadowCopyFiles
    是一个字符串属性,我们需要设置
    “true”
    “false”
    而不是real
    bool
    类型

    下面是AppDomainSetup中该属性的实现:

    public string ShadowCopyFiles
    {
      get
      {
        return this.Value[8];
      }
      set
      {
        if (value != null && string.Compare(value, "true", StringComparison.OrdinalIgnoreCase) == 0)
          this.Value[8] = value;
        else
          this.Value[8] = (string) null;
      }
    }
    
    下面是AppDomain.ShadowCopyFiles的一个实现:

    public bool ShadowCopyFiles 
    { 
        get {
            String s = FusionStore.ShadowCopyFiles; 
            if((s != null) &&
               (String.Compare(s, "true", StringComparison.OrdinalIgnoreCase) == 0))
                return true;
            else 
                return false;
        } 
    } 
    
    但是为什么在
    AppDomainSetup
    中此属性是
    字符串
    ?为什么微软没有像在AppDomain.ShadowCopyFiles中那样使用一些
    bool
    转换逻辑


    奇怪的是,AppDomainSetup中有这么一个有点臭的代码,我只是在想我丢失它的真正原因是什么?

    这是早期版本的.NET中的一个错误,MS决定不修复它,因为它会破坏现有的代码

    请参阅此链接

    可能存在的副本