如何将常规属性转换为自动属性C# 公共类MsException:BaseException { 私有只读字符串\u错误; 私有只读字符串\u消息; 公共MsException(内部id) { 变量代码=(枚举)错误ID; _error=code.ToString(); _message=code.GetNames(); } 公共覆盖字符串StatusCode=>\u错误; 公共覆盖字符串消息=>\u消息; }

如何将常规属性转换为自动属性C# 公共类MsException:BaseException { 私有只读字符串\u错误; 私有只读字符串\u消息; 公共MsException(内部id) { 变量代码=(枚举)错误ID; _error=code.ToString(); _message=code.GetNames(); } 公共覆盖字符串StatusCode=>\u错误; 公共覆盖字符串消息=>\u消息; },c#,C#,我想将这些属性转换为自动属性,作为C#6示例。他们会是什么样子 在BaseException中,我又有了两个属性string StatusCode和string Message 任何帮助都将不胜感激。我需要一些如何做的例子 这里有一些糟糕的混合,因为您重写了在BaseException中找到的属性,这几乎不是一个好主意,因为它们已经存在了 因此,您可以只使用这些已经存在的属性,而不是创建新的属性 也许您可以解释一下为什么需要它。这里有一些糟糕的混合,因为您重写了在BaseException中找到

我想将这些属性转换为自动属性,作为C#6示例。他们会是什么样子

BaseException
中,我又有了两个属性
string StatusCode
string Message


任何帮助都将不胜感激。我需要一些如何做的例子

这里有一些糟糕的混合,因为您重写了在
BaseException
中找到的属性,这几乎不是一个好主意,因为它们已经存在了

因此,您可以只使用这些已经存在的属性,而不是创建新的属性


也许您可以解释一下为什么需要它。

这里有一些糟糕的混合,因为您重写了在
BaseException
中找到的属性,这不是一个好主意,因为它们已经存在

因此,您可以只使用这些已经存在的属性,而不是创建新的属性

也许您可以解释一下为什么需要它。

公共类MsException:BaseException
{ 
公共MsException(内部id)
{
变量代码=(枚举)错误ID;
StatusCode=code.ToString();
Message=code.GetNames();
}
}
类似的方法可能会起作用。

公共类MsException:BaseException
{ 
公共MsException(内部id)
{
变量代码=(枚举)错误ID;
StatusCode=code.ToString();
Message=code.GetNames();
}
}

如果基类中有
StatusCode
Message
,则类似的操作可能有效。

。您正在继承该基类,并希望将值设置为基类属性,然后只需将值指定给该属性即可

public class MsException : BaseException
   { 
   public MsException(int id)
      {
         var code = (Enum)errorId;

         this.StatusCode = code.ToString();
         this.Message = code.GetNames();
      }
   }
您的
BaseException
类可能如下所示

public class BaseException
{
    public string StatusCode {get; set;};
    public string Message {get; set;}

}

如果基类中有
StatusCode
Message
。您正在继承该基类,并希望将值设置为基类属性,然后只需将值指定给该属性即可

public class MsException : BaseException
   { 
   public MsException(int id)
      {
         var code = (Enum)errorId;

         this.StatusCode = code.ToString();
         this.Message = code.GetNames();
      }
   }
您的
BaseException
类可能如下所示

public class BaseException
{
    public string StatusCode {get; set;};
    public string Message {get; set;}

}


请提供上面代码的示例,这样我们就可以看到如何操作的工作示例。假设
BaseException
继承自Exception,您根本不需要这些属性。您应该删除它们并在构造函数中设置现有属性。事实上,您应该调用相应的基本构造函数并传递一条描述性消息。如果要存储额外数据,请使用
数据
属性,而不是
消息
状态码
消息
基本异常
中是什么样子的,代码需要有完整的示例假设凌晨12点出错,服务器已关闭,您必须读取所有异常消息都相同的日志文件。你打算怎么解决这个问题?如果你的老板必须解决这个问题怎么办?两者都是公共虚拟字符串,只有get;请提供上面代码的示例,这样我们就可以看到如何操作的工作示例。假设
BaseException
继承自Exception,您根本不需要这些属性。您应该删除它们并在构造函数中设置现有属性。事实上,您应该调用相应的基本构造函数并传递一条描述性消息。如果要存储额外数据,请使用
数据
属性,而不是
消息
状态码
消息
基本异常
中是什么样子的,代码需要有完整的示例假设凌晨12点出错,服务器已关闭,您必须读取所有异常消息都相同的日志文件。你打算怎么解决这个问题?如果你的老板必须解决这个问题怎么办?两者都是公共虚拟字符串,只有get;为什么如果属性是抽象的,那么它们必须是抽象的呢overridden@MrinalKamboj只有当
BaseException
不是
Exception
时,在这种情况下,名称选择真的非常糟糕。@PanagiotisKanavos同意,我猜是因为完全缺乏信息这是一个例外,“这名字不错。”杰西卡·帕克:在这种情况下,这不是一个精心设计的例外。该信息应解释问题所在,并可能解释解决问题的方法。否则就没用了。当所有日志记录都是相同的枚举值时,您是否能够对生产错误进行故障排除?为什么如果属性是抽象的,则需要对其进行修改overridden@MrinalKamboj只有当
BaseException
不是
异常时,在这种情况下,名称选择非常非常糟糕。@PanagiotisKanavos同意,我猜是因为完全缺乏信息,这是一个例外,不是一个坏名字。@JessikaParker在这种情况下,这不是一个精心设计的例外。该信息应解释问题所在,并可能解释解决问题的方法。否则就没用了。当所有日志记录都是相同的枚举值时,是否能够对生产错误进行故障排除?