日期:2014-05-18 浏览次数:20971 次
//服务的接口 [ServiceContract] public interface IWcfService { //test [OperationContract] string GetData(); [OperationContract] void Ret(out string str, out string str2); //上面两个函数都能正常调用,但下面需要返回ErrInfo 的自定义对象,就不知道怎么操作了, [OperationContract] DataTable GetDataTable(string strSql, out ErrInfo errInfo); [OperationContract] ErrInfo GetDataTable(); } // 使用下面示例中说明的数据约定将复合类型添加到服务操作。 [DataContract] public class ErrInfo { private short SignErr; private string StrErr; public ErrInfo(short signErr, string strErr) { SignErr = signErr; StrErr = strErr; } [DataMember] public short signErr { get { return SignErr; } set { SignErr = value; } } [DataMember] public string strErr { get { return StrErr; } set { StrErr = value; } } //函数的实现我就不贴了,没得问题,下面是客服端的接口 [ServiceContract] public interface IWcfService { //[OperationContract] //string GetData(); [OperationContract] string GetDataB(); [OperationContract] void Ret(out string str,out string str2); //这里我不知道怎么写返回对象函数的接口 } private void btnA_Click(object sender, EventArgs e) { string str, str2; server.Ret(out str, out str2);//所以也没办法调用,希望高手指点 MessageBox.Show(str2); }