Vb.net 强制扩展继承的属性

Vb.net 强制扩展继承的属性,vb.net,visual-studio-2012,inheritance,Vb.net,Visual Studio 2012,Inheritance,我有一个基类和一个MustOverride属性 Public必须继承类TestInstrument 公共MustOverride属性XmlSettings作为对象 末级 当我继承TestInstrument时,我希望扩展为XmlSettings属性自动生成的代码段,即 Public将属性XmlSettings重写为对象 得到 '奖励:抛出新的NotImplementedException() 结束 设置(值作为对象) '奖励:抛出新的NotImplementedException() 端集 端

我有一个基类和一个
MustOverride
属性

Public必须继承类TestInstrument
公共MustOverride属性XmlSettings作为对象
末级
当我继承
TestInstrument
时,我希望扩展为
XmlSettings
属性自动生成的代码段,即

Public将属性XmlSettings重写为对象
得到
'奖励:抛出新的NotImplementedException()
结束
设置(值作为对象)
'奖励:抛出新的NotImplementedException()
端集
端属性
但它总是默认为自动实现的版本

Public将属性XmlSettings重写为对象
我不喜欢这里的自动实现属性的原因是继承类必须将
XmlSettings
定义为
Object
以外的类型,该类型在XML配置文件中定义,并在项目的不同点使用反射加载


在继承基类时,有没有办法使属性始终扩展?

以半自动方式进行扩展有什么问题?让它自动生成速记语法(确实如此),在该行后按enter键,键入
g
,再次按enter键。完成。

您使用的是哪个Visual Studio版本,因为在我的VS 2008 professional中,会根据您的需要自动展开?@pasty VS 2010 professional也是如此。这可能是VS 12/13版的问题。这是Visual Studio 2012。这不是因为我懒惰(也许有点懒惰),而是因为我的设计。此属性需要扩展并作为
对象
以外的对象重写,才能正常工作。我知道这一点,但其他开发人员可能不知道。有没有办法在评论之外强制使用它?@DanVerdolino:您不能覆盖它,也不能将类型更改为更具体的类型。VB.NET不会让你这么做的。或者,您可能想添加代码,将所需的类型装箱到对象中?是的,我有一个工厂,用于装箱XML配置文件中某个类的设置对象。派生的
TestInstrument
中有一个backing字段,它属于settings类,该
settings
属性负责取消装箱和设置。派生类不清楚如何实现这一点,必须查看现有的派生
TestInstrument
,以了解该模式。也许是糟糕的设计,但可能超出了我最初问题的范围。谢谢