如何用C#制作一个网页连接数据库的网页

该问题被发起重新开启投票
投票剩余时间:
之前被关闭原因:
该问题被发起删除投票
投票剩余时间:
距离悬赏到期还有:
参与关闭投票者:
关闭原因:
该问题已经被锁定
锁定原因:()
保护原因:避免来自新用户不合宜或无意义的致谢、跟帖答案。
该问题已成功删除,仅对您可见,其他人不能够查看。
建议使用HttpWebRequest和HttpWebResponse来做GET和POST,这样效率会好一些(因为没有额外无用的GET)。至于该POST那些数据,可以使用HttpWatch来查看
原理是,利用winfrom模拟表单提交数据,将要提交的参数提交给网页,网页执行代码,得到数据,然后Winform程序将网页的所有源代码读取下来,这样就达到windows应用程序和web应用程序之间传参和现实数据的效果了
首先创建一个windows应用程序和web应用程序。
在web应用程序中,将网页切换到源代码并把源代码中一些没用的代码删掉,只保留头部,在windows应用程序读取网页源码时,这些都会被一起读下来,但这些都是没用的数据,而且删掉没什么影响。需要保留的代码如下:   &%@ Page Language="C#" AutoEventWireup="true"
CodeFile="Default.aspx.cs" Inherits="_Default" %&   然后在Page_Load中实现功能,以下为一个将两个数相加并将和返回给winform的网页例子。   string A = Request.Form["a"].ToString();//由winform中传给网页的参数用a标识   string B = Request.Form["b"].ToString();   int C = Convert.ToInt32(A) + Convert.ToInt32(B);   Response.Write(C.ToString());//将数据写到网页中   在winform中实现传参的例子代码如下:   private void button1_Click(object sender, EventArgs e)
WebClient w = new WebClient();
System.Collections.Specialized.NameValueCollection VarPost = new System.Collections.Specialized.NameValueCollection();
VarPost.Add("a", textBox1.Text.Trim());//将textBox1中的数据变为用a标识的参数,并用POST传值方式传给网页
VarPost.Add("b", textBox2.Text.Trim());     //将参数列表VarPost中的所有数据用POST传值的方式传给http://申请好的域名或用IIs配置好的地址/Default.aspx,    //并将从网页上返回的数据以字节流存放到byRemoteInfo中)(注:IIS配置的时候经常没配置好会提示错误,嘿)
    byte[] byRemoteInfo = w.UploadValues("http://申请好的域名或用IIs配置好的地址/Default.aspx", "POST", VarPost);    string sRemoteInfo = System.Text.Encoding.UTF8.GetString(byRemoteInfo);     label1.Text = sRemoteI
}   这样就实现了C# Winform利用POST传值方式模拟表单提交数据,在这仅供大家参考。
去年写的代码,不知道今年有没有变化,给你看看吧注意几个要点,1.需要模拟SSL加密登录这个过程。2.需要Cookie对象。其他就没什么了,根据监控软件的数据模拟request就可以了
using Susing System.Collections.GponentMusing System.Dusing System.Dusing System.Lusing System.Tusing System.Windows.Fusing System.Nusing System.IO;using System.Security.Cryptography.X509Cusing System.Net.Susing System.Text.RegularEnamespace WindowsFormsApplication1{
public partial class Form1 : Form
public Form1()
InitializeComponent();
/// 使用WebRequest?接之前?用此方法就可以了.
private void MethodToAccessSSL()
ServicePointManager.ServerCertificateValidationCallback =
new RemoteCertificateValidationCallback(ValidateServerCertificate);
//WebRequest myRequest = WebRequest.Create(url);
// The following method is invoked by the RemoteCertificateValidationDelegate.
public static bool ValidateServerCertificate(
object sender,
X509Certificate certificate,
X509Chain chain,
SslPolicyErrors sslPolicyErrors)
if (sslPolicyErrors == SslPolicyErrors.None)
Console.WriteLine("Certificate error: {0}", sslPolicyErrors);
// Do not allow this client to communicate with unauthenticated servers.
private void button1_Click(object sender, EventArgs e)
this.MethodToAccessSSL();
string URL = "/otsweb/passCodeAction.do?rand=lrand";
HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(URL);
webRequest.CookieContainer = this.
WebResponse response = webRequest.GetResponse();
Stream s = response.GetResponseStream();
this.pictureBox1.Image = Image.FromStream(s);
response.Close();
private CookieContainer cc = new CookieContainer();
private void button2_Click(object sender, EventArgs e)
this.richTextBox1.Clear();
this.tryLogin();
private void tryLogin()
string content = this.login();
Regex reg = new Regex("当前??用??多,?稍后重?!");
if (reg.Match(content).Success)
this.tryLogin();
this.richTextBox1.Text =
private string login()
this.MethodToAccessSSL();
string url = "/otsweb/loginAction.do?method=login";
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
req.Method = "POST";
req.ContentType = "application/x-www-form-urlencoded";
req.Accept = "image/gif, image/jpeg, image/pjpeg, image/pjpeg, application/x-shockwave-flash, application/x-ms-application, application/x-ms-xbap, application/vnd.ms-xpsdocument, application/xaml+xml, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*";
req.Referer = "/otsweb/loginAction.do?method=init";
req.UserAgent = "Mozilla/4.0 ( MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727; .NET CLR 3.0.; .NET CLR 3.5.30729; .NET4.0C; .NET4.0E; BRI/2; InfoPath.2; BO1IE8_v1;ENUS)";
req.Host = "";
req.KeepAlive =
req.CookieContainer =
byte[] sendData =
sendData = Encoding.Default.GetBytes("loginUser.user_name=xxxx&nameErrorFocus=&user.password=Xxxxxx&passwordErrorFocus=&randCode=" + this.textBox1.Text + "&randErrorFocus=");
req.ContentLength = sendData.L
Stream reqStream = req.GetRequestStream();
reqStream.Write(sendData, 0, sendData.Length);
reqStream.Close();
WebResponse res = req.GetResponse();
Stream s = res.GetResponseStream();
string content = new StreamReader(s).ReadToEnd();
//this.webBrowser1.DocumentText =
res.Close();
private void Form1_Load(object sender, EventArgs e)
this.MethodToAccessSSL();
string url = "/otsweb/";
HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(url);
webRequest.CookieContainer = this.
WebResponse response = webRequest.GetResponse();
Stream s = response.GetResponseStream();
//this.pictureBox1.Image = Image.FromStream(s);
response.Close();
//Cookie co = new Cookie();
//co.Name = "BIGipServerotsweb";
//co.Value = ".";
//co.Path = "/";
//co.Domain = "";
//this.cc.Add(co);
//co = new Cookie();
//co.Name = "JSESSIONID";
//co.Value = "8FD1A56E8D082E10D5BCED8ABB013C32";
//co.Path = "/otsweb";
//co.Domain = "";
//this.cc.Add(co);
不是您所需,查看更多相关问题与答案
德问是一个专业的编程问答社区,请
后再提交答案
关注该问题的人
共被浏览 (8767) 次您的举报已经提交成功,我们将尽快处理,谢谢!
这是检查输入的编码
要检查浏览器是不是支持cookie
你需要使用浏览的js
看看javascript的说明,具体我记不清楚了
大家还关注
(window.slotbydup=window.slotbydup || []).push({
id: '2081942',
container: s,
size: '1000,60',
display: 'inlay-fix'winformC#的登陆页面链接数据库设计_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
winformC#的登陆页面链接数据库设计
上传于||文档简介
&&w​i​n​f​o​r​m​,​C​#​的​登​陆​页​面​链​接​数​据​库​设​计​核​心​代​码​,​链​接​数​据​库​验​证​用​户​名​密​码​,​错​误​提​示​。
阅读已结束,如果下载本文需要使用1下载券
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,查找使用更方便
还剩1页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢君,已阅读到文档的结尾了呢~~
广告剩余8秒
文档加载中
C#做一个采集网页数据的工具
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
C#做一个采集网页数据的工具
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口

我要回帖

更多关于 网页连接数据库 的文章

 

随机推荐