蓝森林首页 | 返回主页 | 本站地图 | 站内搜索 | 联系信箱 |
 您目前的位置:首页 > 自由软件 > 技术交流 > 应用编程


    

蓝森林 http://www.lslnet.com 2006年8月25日 8:28

[ASP&ASP.NET]传值

我不懂.NET,但最近公司有一个项目,需要asp页面向.net页面传值,类似于域名的开发接口,利用ASP页面POST几个参数到.NET页面处理,不知传值方面有什么不同??

没有不同,都是一样的传法。

哦,贴两个页面你看看:
WebForm1.aspx
[code]
<%@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="webapp.WebForm1" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
        <HEAD>
                <title>WebForm1</title>
                <meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
                <meta name="CODE_LANGUAGE" Content="C#">
                <meta name="vs_defaultClientScript" content="JavaScript">
                <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
        </HEAD>
        <body MS_POSITIONING="GridLayout">
                <form id="Form1" method="post" runat="server">
                        <asp:Label id="Label1" style="Z-INDEX: 101; LEFT: 112px; POSITION: absolute; TOP: 80px" runat="server">短信通帐号:</asp:Label>
                        <asp:TextBox id="txtMsg" style="Z-INDEX: 109; LEFT: 216px; POSITION: absolute; TOP: 184px" runat="server"></asp:TextBox>
                        <asp:TextBox id="txtMobile" style="Z-INDEX: 108; LEFT: 216px; POSITION: absolute; TOP: 148px"
                                runat="server"></asp:TextBox>
                        <asp:TextBox id="txtPwd" style="Z-INDEX: 107; LEFT: 216px; POSITION: absolute; TOP: 114px" runat="server"></asp:TextBox>
                        <asp:TextBox id="txtUid" style="Z-INDEX: 106; LEFT: 216px; POSITION: absolute; TOP: 80px" runat="server"></asp:TextBox>
                        <asp:Label id="Label5" style="Z-INDEX: 105; LEFT: 128px; POSITION: absolute; TOP: 184px" runat="server">短信内容:</asp:Label>
                        <asp:Label id="Label4" style="Z-INDEX: 104; LEFT: 80px; POSITION: absolute; TOP: 148px" runat="server">接收短信的手机:</asp:Label>
                        <asp:Label id="Label3" style="Z-INDEX: 103; LEFT: 128px; POSITION: absolute; TOP: 224px" runat="server">发送状态:</asp:Label>
                        <asp:Label id="Label2" style="Z-INDEX: 102; LEFT: 112px; POSITION: absolute; TOP: 114px" runat="server">短信通密码:</asp:Label>&nbsp;
                        <asp:Label id="lblState" style="Z-INDEX: 110; LEFT: 224px; POSITION: absolute; TOP: 224px"
                                runat="server"></asp:Label>
                        <asp:Button id="Button1" style="Z-INDEX: 111; LEFT: 168px; POSITION: absolute; TOP: 272px" runat="server"
                                Text="发送方法一"></asp:Button>
                        <asp:Button id="Button2" style="Z-INDEX: 112; LEFT: 304px; POSITION: absolute; TOP: 272px" runat="server"
                                Text="发送方法二"></asp:Button>
                </form>
        </body>
</HTML>

[/code]

WebForm1.aspx.cs
[code]
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Net;
using System.Text;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;

namespace webapp
{
        /// <summary>
        /// WebForm1 的摘要说明。
        /// </summary>
        public class WebForm1 : System.Web.UI.Page
        {
                protected System.Web.UI.WebControls.Label Label1;
                protected System.Web.UI.WebControls.Label Label2;
                protected System.Web.UI.WebControls.Label Label3;
                protected System.Web.UI.WebControls.Label Label4;
                protected System.Web.UI.WebControls.Label Label5;
                protected System.Web.UI.WebControls.Label lblState;
                protected System.Web.UI.WebControls.Button Button1;
                protected System.Web.UI.WebControls.TextBox txtUid;
                protected System.Web.UI.WebControls.TextBox txtPwd;
                protected System.Web.UI.WebControls.TextBox txtMobile;
                protected System.Web.UI.WebControls.TextBox txtMsg;
                protected System.Web.UI.WebControls.Button Button2;
       
                private void Page_Load(object sender, System.EventArgs e)
                {
                        // 在此处放置用户代码以初始化页面
                }

                #region Web 窗体设计器生成的代码
                override protected void OnInit(EventArgs e)
                {
                        //
                        // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
                        //
                        InitializeComponent();
                        base.OnInit(e);
                }
               
                /// <summary>
                /// 设计器支持所需的方法 - 不要使用代码编辑器修改
                /// 此方法的内容。
                /// </summary>
                private void InitializeComponent()
                {   
                        this.Button1.Click += new System.EventHandler(this.Button1_Click);
                        this.Button2.Click += new System.EventHandler(this.Button2_Click);
                        this.Load += new System.EventHandler(this.Page_Load);

                }
                #endregion

                private void Button1_Click(object sender, System.EventArgs e)
                {
                        string sResult = RequestUrl(GetUrl());
                        string sInfo = "";
                        switch (sResult)
                        {
                                case "0":
                                        sInfo = "发送失败";
                                        break;
                                case "1":
                                        sInfo = "发送成功";
                                        break;
                                case "2":
                                        sInfo = "参数不全";
                                        break;
                                case "3":
                                        sInfo = "用户名或密码错误";
                                        break;
                                case "4":
                                        sInfo = "帐户余额不足";
                                        break;
                                case "5":
                                        sInfo = "手机号码超过100个";
                                        break;
                                case "6":
                                        sInfo = "发送手机里有错误号码";
                                        break;
                                case "7":
                                        sInfo = "短信内容含有非法字符";
                                        break;
                                case "8":
                                        sInfo = "短信内容超过500个字";
                                        break;

                        }
                        lblState.Text = sInfo;
                }
                private void Button2_Click(object sender, System.EventArgs e)
                {
                        Response.Redirect(GetUrl());
                }
                private string GetUrl()
                {
                        string sUid = txtUid.Text.Trim();
                        string sPwd = txtPwd.Text.Trim();
                        string sMobile = txtMobile.Text.Trim();
                        string sMsg = txtMsg.Text.Trim();

                        sUid = HttpUtility.UrlEncode(sUid,UnicodeEncoding.GetEncoding("GB2312"));
                        sPwd = HttpUtility.UrlEncode(sPwd,UnicodeEncoding.GetEncoding("GB2312"));
                        sMobile = HttpUtility.UrlEncode(sMobile,UnicodeEncoding.GetEncoding("GB2312"));
                        sMsg = HttpUtility.UrlEncode(sMsg,UnicodeEncoding.GetEncoding("GB2312"));

                        return "Http://192.168.18.22/customer/admin/groupSms.aspx?Uid=" + sUid + "&Pwd=" + sPwd + "&Mobile=" + sMobile + "&Msg=" + sMsg;
                }
                private string RequestUrl(string url)
                {
                        string HtmlText = "";
                        try
                        {
                                WebRequest req = WebRequest.Create(url);
                               
                                WebResponse res = req.GetResponse();
                                Stream resStream = res.GetResponseStream();
                                StreamReader sr = new StreamReader(resStream,Encoding.Default);
                                HtmlText = (string)sr.ReadToEnd();
                                sr.Close();
                        }
                        catch
                        {
                        }
                        return HtmlText;
                }
        }
}

[/code]

其中这句:return "Http://192.168.18.22/customer/admin/groupSms.aspx?Uid=" + sUid + "&Pwd=" + sPwd + "&Mobile=" + sMobile + "&Msg=" + sMsg;
应该是传几个参数给外部某个网页处理

但:
[code]
                        switch (sResult)
                        {
                                case "0":
                                        sInfo = "发送失败";
                                        break;
                                case "1":
                                        sInfo = "发送成功";
                                        break;
                                case "2":
                                        sInfo = "参数不全";
                                        break;
                                case "3":
                                        sInfo = "用户名或密码错误";
                                        break;
                                case "4":
                                        sInfo = "帐户余额不足";
                                        break;
                                case "5":
                                        sInfo = "手机号码超过100个";
                                        break;
                                case "6":
                                        sInfo = "发送手机里有错误号码";
                                        break;
                                case "7":
                                        sInfo = "短信内容含有非法字符";
                                        break;
                                case "8":
                                        sInfo = "短信内容超过500个字";
                                        break;

                        }
[/code]
这是返回的值吧,这里用ASP做就不会了……

上面的问题已经解决了,谢谢




Copyright © 1999-2000 LSLNET.COM. All rights reserved. 蓝森林网站 版权所有。 E-mail : webmaster@lslnet.com