DirectoryInfo directory;
public string Name {
get { return this.directory.Name; }
set { this.directory.Name = value; }
}
您好。我在c#中有这个代码。它不起作用我收到此错误:
无法分配属性或索引器System.Io.FileSystemInfo.Name 到 - 它是只读的。
我该怎么办?
答案 0 :(得分:1)
正如编译器所说,DirectoryInfo
的继承Name
属性是只读的。表达式this.directory.Name = value;
是错误的;你不能分配给只读属性。
要使您的班级“Name
属性为只读,请完全删除该setter。如果您希望该属性是可写的,那么您需要弄清楚写入Name
属性意味着什么,并执行适当转换对象状态所需的任何逻辑。
答案 1 :(得分:1)
我可以想到三种可能性:
directory
的值以引用指定的目录如果不知道您的财产真正意味着什么,那么很难真正说出哪些选项适合(如果有的话)。
答案 2 :(得分:0)
DirectoryInfo.Name
是只读的,您无法修改它。您应该从代码中删除它。但是,如果您想更改目录的名称,可以这样写:
System.IO.Directory.Move("oldDirName", "newDirName");