0
我定义了Date的下列扩展名?数据类型使用CompilerServices.Extensions扩展密封的内部数据类型 - 无法重用?
'Nullable Date Extensions
<System.Runtime.CompilerServices.Extension()> _
Public Function ToObject(ByVal thisInstance As Date?) As Object
Return If(thisInstance.HasValue, CType(thisInstance, Object), DBNull.Value)
End Function
这给了我简洁的能力做到这一点:
Public Property MyDateTime() As Date?
rowTest.Item("MyDate") = Me.MyDate.ToObject
但是,当我提出我的编译器定义到一个单独的DLL,我的ToObject方法不再从我的项目甚至尽管我已经引用了现在包含扩展的Class项目。
这是编译器扩展的限制吗?你有没有使用它们的可重用性?
我不知道是什么名字空间。如果将代码直接复制到另一个项目中,代码将起作用,这向我建议所需的引用已包含在两个项目中。 – ChadD 2010-11-12 13:17:33
这不仅仅是参考的问题。您需要为目标文件添加“imports”语句,导入包含扩展方法的名称空间。 – 2010-11-14 17:24:08
没有。没有工作。试试看看。 – ChadD 2010-11-16 23:47:39