我需要从javascript发送一个字节数组到c#page方法。 int和string变量工作正常,但是当我逐步执行c#代码时,作为字节数组的“对象”为null,即使我检查它是否在JS中有值。
var byteArrayObj = GetBinaryDataFromFile(filePath);
var tranAttachmentName = filePath.replace(/^.*\\/, '');
PageMethods.AddFileToTran(tranId, tranAttachmentName, byteArrayObj, RefreshPage, onTimeout, onError);
function GetBinaryDataFromFile(strFileName)
{
var streamObj = new ActiveXObject("ADODB.Stream");
streamObj.Type = 1;
streamObj.Open();
streamObj.LoadFromFile(strFileName);
var ByteArray = streamObj.Read();
streamObj.Close();
return(ByteArray);
}
c#code:
[System.Web.Services.WebMethod]
public bool AddFileToTran(int tranId, string tranAttachmentName, object byteArrayObj)
{
DBConnector dbConnectorObj = new DBConnector("cnnDataTracking");
try
{ ........
对象byteArrayObj为空。
答案 0 :(得分:0)
事实证明使用回发是继续这样做的方法。无论如何,它不需要是异步的。感谢您的评论。