【发布时间】:2014-03-04 13:52:21
【问题描述】:
我正在寻找一种将字节数组从 c# COM 对象传递到 IIS/ASP(不是 .NET)的方法。我打算使用字符串来传递它,但是虽然 ASP 可以毫无问题地处理字符串中的二进制数据,但 C# 却没有。这意味着我不能期望转换为字符串并传递给 ASP 的字节数组与原始数组相同。此外,当在 ASP 中有数组时,我需要将其作为响应 (Response.Write) 原封不动地发送。
我发现 this SO answer - How to correctly marshal VB-Script arrays to and from a COM component written in C# 解释了如何传递数组,但我不清楚我应该如何传递字节数组以及如何在 ASP 中将数组组装成字符串。
任何指针?我已经有了 COM 对象并且可以来回传递数据(字符串、整数等)。字节数组部分让我望而却步。
编辑:这是我现在使用的(以及根本不起作用的):
[DispId(1003)]
byte[] arrayOut { set; get; }
【问题讨论】:
-
目前我正在考虑将磁盘上的数据存储在 C# COM 对象中,并将文件名传递给 ASP 以供其读取,但似乎更直接的方式应该是可能的。
-
这里有一些信息可能会有所帮助:motobit.com/tips/detpg_binarytostring 我过去曾成功使用过 CreateObject("ADODB.Recordset") 和 AppendChunk。
标签: c# arrays asp-classic com byte