COM Interop:我应该怎么做才能使C#属性可用作VBA中的VARIANT

问题描述

| 假设我有一个C#Nullable
DateTime?
属性,VBA需要通过COM使用它。
    public DateTime? TestDate {
        get ; set;
    }
不幸的是,Nullables无法通过COM看到,因此我希望该属性返回某种东西,该东西将被视为VBA中的Variant。 不幸的是,我不确定该如何编写。 我尝试使用
object
dynamic
而不是
DateTime?
:虽然可以获取属性值,但无法设置它(我从VBA中获取运行时错误\'424 \'对象必需的错误)。 注意:使我的库成为COM Visible时没有任何问题:一切正常,并且可以使用VBA中的.Net类型,但没有特殊问题。 感谢您的指导。 编辑:我发现了一个有趣的页面,该页面描述了对象的默认编组,但是我似乎无法解释为什么如果将属性声明为
object
,则无法设置我的属性。 我想念一些东西。     

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)