输入流是无效的二进制格式。开始内容(以字节为单位.................,这个是不是.net2.o的Bug?
两过程函数如下://取单个DataSet
public DataSet rptGetSingleDataSet(string connectionString, string sProcName, string[] sParamName, int[] iDbType, int[] iSize, object[] Value, string srcTable)
{
return Acess.rptGetSingleDataSet(connectionString,sProcName,sParamName,iDbType,iSize,Value,srcTable);
}
//取主从DataSet
public DataSet rptMutilDataSet(string connectionString, string sMasterProcName, string[] sMasterParamName,
int[] iMasterDbType, int[] iMasterSize, string[] MasterValue, string srcMasterTable, string sDetailProcName,
string[] sDetailParamName, int[] iDetailDbType, int[] iDetailSize, string[] DetailValue, string srcDetailTable, string[] sRelation, string sRelationName)
{
return Acess.rptMutilDataSet(connectionString, sMasterProcName, sMasterParamName, iMasterDbType, iMasterSize, MasterValue, srcMasterTable,
sDetailProcName, sDetailParamName, iDetailDbType, iDetailSize, DetailValue, srcDetailTable, sRelation, sRelationName);
}
调用第一个方法,OK,调用第二个方法时确出现如下错误:
未处理 System.Runtime.Serialization.SerializationException
Message="输入流是无效的二进制格式。开始内容(以字节为单位)是: 3C-3F-78-6D-6C-20-76-65-72-73-69-6F-6E-3D-22-31-2E..."
Source="mscorlib"
请高手指教?
如果我不采用remoting远程调用,第二个方法返回值没有任何问题! --------------------编程问答-------------------- 我分析了一下,这两个方法,只是参数多少的问题,没有任何区别,难道C#参数多了,类型多了,就不能序列化?,只支持简单一些数据序列化吗?遇到多几个数组就搞不定? --------------------编程问答-------------------- 这么久都没有回复,难道没人能解决该问题?
我单独的去序列化每个参数,序列化没有问题,序列化如下:
Stream stream = File.Create("example.xml");
SoapFormatter formatter = new SoapFormatter();
formatter.Serialize(stream,connectionString);
formatter.Serialize(stream, sMasterProcName);
formatter.Serialize(stream, sMasterParamName);
formatter.Serialize(stream, iMasterDbType);
formatter.Serialize(stream, iMasterSize);
formatter.Serialize(stream, MasterValue);
formatter.Serialize(stream, srcDetailTable);
formatter.Serialize(stream, sDetailProcName);
formatter.Serialize(stream, sDetailParamName);
formatter.Serialize(stream, iDetailDbType);
formatter.Serialize(stream, iDetailSize);
formatter.Serialize(stream, DetailValue);
formatter.Serialize(stream, srcDetailTable);
formatter.Serialize(stream, sRelation);
formatter.Serialize(stream, sRelationName);
为何调用该法返回Datataset时确出现莫明其妙的输入的流是无效的二进制格式,那位能士可解偶的问题! --------------------编程问答-------------------- CSDN的高手在那儿,难道山中无大王呼? --------------------编程问答-------------------- 偶也是似乎的问题,郁闷 --------------------编程问答-------------------- 你的这个问题解决了没有?
我现在也碰到了这个问题,着急啊! --------------------编程问答-------------------- 此问题已解决,后来我他细检查了一下,在该接口实例化的过程中,由于他是函数,不是过程,需要有返回值,所以出错,后来改过,就OK啦!不知道上面的楼主是不是也是这个原因,可以贴出代码,偶可以分析分析...... --------------------编程问答-------------------- hehe,dingnigefei --------------------编程问答-------------------- 那么久了......我也遇到这个问题啊,求解啊
补充:.NET技术 , C#