Ste*_*rdi 5 c# com serialization
看起来我无法通过COM将类暴露给非托管客户端,如果该类的一个属性具有类型DateTime.
例:
[ComVisible(true)]
public interface ITest
{
string Name { get; }
DateTime Date { get; }
}
[Serializable]
[ComVisible(true)]
public class Test : ITest
{
public string Name { get; private set; }
public DateTime Date { get; private set; }
}
Run Code Online (Sandbox Code Playgroud)
只有当我Date在接口和实现上注释掉属性时,.tlh文件才会包含Test结构(显然没有Date).
任何的想法?有没有办法表示通过COM可见的日期?我是否真的需要传递Date作为a string然后解析它?
感谢您的时间!
在 COM 中,日期是 VT_DATE 类型的变体。我认为你可以利用这个: http://blogs.msdn.com/dimeby8/archive/2006/12/12/marshalling-variant-properties-in-c.aspx