C# 设置属性时设置其他属性
我有一个具有许多属性的类 在本文中,有两个与此相关的属性C# 设置属性时设置其他属性,c#,properties,C#,Properties,我有一个具有许多属性的类 在本文中,有两个与此相关的属性 public string FileName { get; set; } public string Path { get; set; } FileName属性是使用XmlReader设置的,但我不想将路径存储在xml文件中 我要做的是设置FileName属性的值,还设置Path属性。我有两个问题: 像这样设置属性的做法行吗 在从XmlReader进行映射时,有没有更好的方法来实现这一点 试试这样的 private string pat
public string FileName { get; set; }
public string Path { get; set; }
FileName属性是使用XmlReader设置的,但我不想将路径存储在xml文件中
我要做的是设置FileName属性的值,还设置Path属性。我有两个问题:
试试这样的
private string path;
public string FileName { get; set; }
public string Path
{
get
{
return path; }
set
{
path = value;
FileName = Path.GetFileName(value);
}
}
如果一个属性可以从另一个属性计算,通常的方法就是这样做:在访问它时计算它。比如:
public string Path { get; set; }
public string FileName
{
get { return System.IO.Path.GetFileName(this.Path); }
}
如果文件名包含完整路径,为什么不在文件名的setter中设置路径?或者将路径更改为返回文件名路径的get only属性?您的问题不清楚,可能是主观的。提供更多的代码,并解释您认为是什么问题。反过来说,我只想存储文件名,但即使如此,您还是遵循了我采用的相同原则。只是不知道这算不算好。