使用Web Service将数据插入数据库

时间:2017-08-25 14:45:02

标签: c# asp.net dll

我正在开发浏览器帮助程序对象以获取客户端信息,如IP,URL,数据时间等。我收到此信息但无法将其存储到数据库中。出于存储目的,我使用Web服务将数据存储到数据库中。 Web服务直接存储信息,但从bho获取信息无法将数据存储到数据库中。并没有显示任何错误,我不知道是什么问题。

这是我的代码:

using System;
using System.Threading.Tasks;
using SHDocVw;
using mshtml;
using System.Runtime.InteropServices;
using Microsoft.Win32;

namespace MyBHO
{
    [
    ComVisible(true),
    Guid("8a194578-81ea-4850-9911-13ba2d71efbd"),
    ClassInterface(ClassInterfaceType.None)
    ]
    public class BHO : IObjectWithSite
    {

        string ip = new 
        System.Net.WebClient().DownloadString("http://icanhazip.com");
        string  datetimenow = DateTime.Now.ToShortDateString();
        WebBrowser webBrowser;
        HTMLDocument document;

在此功能中,我将数据发送到Web服务以将数据保存到数据库中,但是当运行它时,它会在表单上显示数据,但不会存储在数据库中。

public void OnDocumentComplete(object pDisp, ref object URL)
{
    document = (HTMLDocument)webBrowser.Document;
    System.Windows.Forms.MessageBox.Show("your log infomation: :" + ip+ "/n" + URL.ToString() + "/n"+ datetimenow);
    logReciever.LogRecieverSoapClient client = new logReciever.LogRecieverSoapClient();
    client.insertData(URL.ToString(), ip, datetimenow);

}

public int SetSite(object site)
{
    if (site != null)
    {
        webBrowser = (WebBrowser)site;
        webBrowser.DocumentComplete +=
          new DWebBrowserEvents2_DocumentCompleteEventHandler(this.OnDocumentComplete);
        webBrowser.BeforeNavigate2 +=
           new DWebBrowserEvents2_BeforeNavigate2EventHandler(this.OnBeforeNavigate2);
    }
    else
    {
        webBrowser.DocumentComplete -=
          new DWebBrowserEvents2_DocumentCompleteEventHandler(this.OnDocumentComplete);
        webBrowser.BeforeNavigate2 -=
          new DWebBrowserEvents2_BeforeNavigate2EventHandler(this.OnBeforeNavigate2);
        webBrowser = null;
    }
    return 0;
}

感谢您的帮助。

0 个答案:

没有答案