再次免责声明 免责声明通常仍在学习 C# 和 OOP 所以我希望你能对我有耐心:)
我目前正在使用一个 CMS,它有一个名为的类,该类FileVersion
基本上包含与文件有关的属性列表,例如文件名、文件类型、字节大小、id、上传日期、最新版本等。
s的列表FileVersion
包含在File
具有自己唯一 ID 的 a 中。当您想从 CMS 下载特定文件时,URL 是使用类似以下内容构建的:
string URL = "/files/"+file.id.toString()+"/"+file.fileVersion.Last().filename;
现在对于我正在处理的特定控件(专门处理作为文档的文件),能够将 URL 与所有其他FileVersion
信息一起存储以供以后使用是有意义的。所以我决定做的是创建我自己的名为DocumentVersion
which extends的类FileVersion
。这是它的样子:
public partial class DocumentVersion : FileVersion
{
public DocumentVersion() : base() { }
public string link;
}
现在我应该注意,我似乎不需要在这里实现一个接口——但不要把它当作福音,这就是我在这里的原因。
但是,当我尝试像这样投射我FileVersion
时DocumentVersion
:
DocumentVersion dv = ((DocumentVersion)fileversion);
我得到以下异常:
无法将“Foo.CMS.FileVersion”类型的对象转换为“CoA.DocumentVersion”类型。
My inkling is that it's because I'm trying to extend a class in a different namespace from where the original resides, but like I said, OOP is relatively new to me so I could be wrong.
Thanks in advance for your help. This community has been so valuable! I just hope once I'm more skilled up I can give some back :).