WebServices(C#)--有输出参数的WEB服务(out 参数)

本文介绍了一个简单的系统登录接口实现过程,包括输入验证、错误处理及客户端和服务端的交互方式。通过具体的代码示例展示了如何使用C#进行Web服务的开发,并提供了一种返回布尔值和错误信息的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

/// <summary>
/// 系统登陆   
/// </summary>
/// <param name="strLoginCode">登陆用户</param>
/// <param name="strLoginPass">登陆密码</param>
/// <param name="intErr">返回:错误信息</param>
/// <returns>登陆结果</returns>
[WebMethod(Description = "功能:系统登陆 | 参数:登陆用户;登陆密码;返回:错误信息 | 返回:登陆结果 | 返回类型:bool")]
// 系统登陆(有输出参数)
public bool GetLogin(string strLoginCode, string strLoginPass, out int intErr)
{
    try
    {
        if (strLoginCode.Trim().Length == 0)
        {
            intErr = -2;// 登陆用户未输入
            return false;
        }
        if (strLoginPass.Trim().Length == 0)
        {
            intErr = -3;// 登陆密码未输入
            return false;
        }
        if (strLoginCode.Trim().ToString() != "user")
        {
            intErr = -4;// 登陆用户错误
            return false;
        }
        else if (strLoginPass.Trim().ToString() != "123")
        {
            intErr = -5;// 登陆密码错误
            return false;
        }
        else
        {
            intErr = 1;
            return true;
        }           
    }
    catch
    {
        intErr = 0;
        return false;
    }
}

 

--------------------------------------------------------------------------------------------------------------------------------------------------------------

 

protected void Button1_Click(object sender, EventArgs e)
{
    try
    {
        // 创建服务对象
        MyWebService.DemoWebService ws = new MyWebService.DemoWebService();
        // 引用服务
        ws.Url = "http://127.0.0.1/WebService/Demo1/DemoWebService.asmx";
        // 身份验证(获取应用程序的系统凭据)
        ws.Credentials = System.Net.CredentialCache.DefaultCredentials;
        int intErr;
        // 调用服务
        if (ws.GetLogin("user", "123", out intErr) == true)
        {
            this.TextBox1.Text = "登陆成功";
        }
        else
        {
            this.TextBox1.Text = GetErrInfo(intErr);
        }
    }
    catch
    {
    }    
}

// 返回错误信息
public string GetErrInfo(int intErr)
{
    string strErr = "";
    switch (intErr)
    {
        case -2:
            strErr = "登陆用户未输入";
            break;
        case -3:
            strErr = "登陆密码未输入";
            break;
        case -4:
            strErr = "登陆用户错误";
            break;
        case -5:
            strErr = "登陆密码错误";
            break;
        default:
            strErr = "未知错误";
            break;
    }
    return strErr;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值