2016-12-02 57 views
2

当我通过PHP索引数组:我可以将一个PHP关联数组传递给ComVisible .NET函数吗?

$myVar = new COM('MyClass'); 
$myVar->DubbleArray([1, 2]); 

...谈到通过到C#或F#作为System.Object的[],并且我可以相应地处理它,例如:

[<ComVisible(true)>] 
type LettersClass() = 
    member this.DubbleArray(array: obj[]) = 
    // do stuff with the values in the array 

但是当我通过一个关联数组:

$myVar->DubbleArray(array('first'=>'1st','second'=>'2nd')); 

...它的DBNull来通过。

有什么办法通过COM将关联数组传递给.NET函数吗?

回答

1

在.NET中使用Dictionary可让您处理指定的密钥。你总是可以编码JSON格式的数据,那么在.NET解码,以及... :)

(注:这个答案是基于关闭没有看到你的问题任何.NET的)

+0

有没有比传统方法更容易/更安全/更高效的方法来通过它们之间的PHP和.NET? JSON序列化? –

+0

我不熟悉任何其他方式。这可能是可能的,你可能想用.NET标记你的问题 –

1

我想这真正取决于如何在PHP端处理关联数组的编组。实际的答案很可能是“一点都不”。

除非你能弄明白,我会建议一个解决方法 - 我最好的选择是将关联数组转换为一个多维数组,并将其存储在单独的列中,然后将其作为obj[,]传递。

相关问题