using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Runtime.Serialization;namespace Uni.Common
{
[Serializable]
[System.ComponentModel.DesignerCategory("Code")]
public class INVMBData : DataSet
{
public const string INVMB_TABLE = "INVMB"; public const string MB001_FIELD = "MB001";
public const string MB002_FIELD = "MB002";
public const string MB003_FIELD = "MB003";
public const string MB004_FIELD = "MB004";
public const string MB005_FIELD = "MB005";
public const string MB006_FIELD = "MB006";
public const string MB007_FIELD = "MB007";
public const string MB008_FIELD = "MB008";
public const string MB009_FIELD = "MB009";
public const string MB010_FIELD = "MB010"; public INVMBData(SerializationInfo info, StreamingContext context)
: base(info, context)
{ } public INVMBData()
{
BuildDataTables();
} private void BuildDataTables()
{
DataTable table = new DataTable(INVMB_TABLE);
DataColumnCollection columns = table.Columns; columns.Add(MB001_FIELD, typeof(System.String));
columns.Add(MB002_FIELD, typeof(System.String));
columns.Add(MB003_FIELD, typeof(System.String));
columns.Add(MB004_FIELD, typeof(System.String));
columns.Add(MB005_FIELD, typeof(System.String));
columns.Add(MB006_FIELD, typeof(System.String));
columns.Add(MB007_FIELD, typeof(System.String));
columns.Add(MB008_FIELD, typeof(System.String));
columns.Add(MB009_FIELD, typeof(System.String));
columns.Add(MB010_FIELD, typeof(System.String)); this.Tables.Add(table);
}
}
}
Web服務
INVMBSystem item=new INVMBSystem();
[WebMethod]
public INVMBData GetDatasBy(string keywords)
{
return item.GetDatasBy(keywords);
}客戶端調用
INVMB.INVMBService inv = new Uni.C_Erp.INVMB.INVMBService();
INVMBData ds=inv.GetDatasBy("MB001='#U1-AU1022'");出錯,提示如下:
錯誤 1 無法將型別 'Uni.C_Erp.INVMB.NewDataSet' 隱含轉換為 'Uni.Common.INVMBData'為什麼用客戶端調用後就變成NewDataSet?應該如何處理?謝謝!
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Runtime.Serialization;namespace Uni.Common
{
[Serializable]
[System.ComponentModel.DesignerCategory("Code")]
public class INVMBData : DataSet
{
public const string INVMB_TABLE = "INVMB"; public const string MB001_FIELD = "MB001";
public const string MB002_FIELD = "MB002";
public const string MB003_FIELD = "MB003";
public const string MB004_FIELD = "MB004";
public const string MB005_FIELD = "MB005";
public const string MB006_FIELD = "MB006";
public const string MB007_FIELD = "MB007";
public const string MB008_FIELD = "MB008";
public const string MB009_FIELD = "MB009";
public const string MB010_FIELD = "MB010"; public INVMBData(SerializationInfo info, StreamingContext context)
: base(info, context)
{ } public INVMBData()
{
BuildDataTables();
} private void BuildDataTables()
{
DataTable table = new DataTable(INVMB_TABLE);
DataColumnCollection columns = table.Columns; columns.Add(MB001_FIELD, typeof(System.String));
columns.Add(MB002_FIELD, typeof(System.String));
columns.Add(MB003_FIELD, typeof(System.String));
columns.Add(MB004_FIELD, typeof(System.String));
columns.Add(MB005_FIELD, typeof(System.String));
columns.Add(MB006_FIELD, typeof(System.String));
columns.Add(MB007_FIELD, typeof(System.String));
columns.Add(MB008_FIELD, typeof(System.String));
columns.Add(MB009_FIELD, typeof(System.String));
columns.Add(MB010_FIELD, typeof(System.String)); this.Tables.Add(table);
}
}
}
Web服務
INVMBSystem item=new INVMBSystem();
[WebMethod]
public INVMBData GetDatasBy(string keywords)
{
return item.GetDatasBy(keywords);
}客戶端調用
INVMB.INVMBService inv = new Uni.C_Erp.INVMB.INVMBService();
INVMBData ds=inv.GetDatasBy("MB001='#U1-AU1022'");出錯,提示如下:
錯誤 1 無法將型別 'Uni.C_Erp.INVMB.NewDataSet' 隱含轉換為 'Uni.Common.INVMBData'為什麼用客戶端調用後就變成NewDataSet?應該如何處理?謝謝!
*****************************************************************************
欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码) http://feiyun0112.cnblogs.com/
至于NewDataSet,不太明白,看看INVMBData的内部实现时怎样的。
public class INVMBData : DataSet
Web服務
INVMBSystem item=new INVMBSystem();
[WebMethod]
public DataSet GetDatasBy(string keywords)
{
return item.GetDatasBy(keywords);
}客戶端調用
INVMB.INVMBService inv = new Uni.C_Erp.INVMB.INVMBService();
DataSet ds=inv.GetDatasBy("MB001='#U1-AU1022'");