C#中 string value的问题
本人新手,突然碰到string的问题不知道如何获取值,代码如下,
不带参数的string GetIP(),我调用它的value'"+GetIP()+"' 是OK的。
但是碰到带有参数的我如何获取string GetstringIpAddress(string strIP)的值,
求解答啊,红色标记处为问题所在。
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;
using System.Net;
using System.Net.Mail;
using System.IO;
using System.Xml;
public partial class _Default : System.Web.UI.Page
{
public SqlConnection conn;
protected void Page_Load(object sender, EventArgs e)
{
string sConnectionString = @"server=XXXXXX;database=XXXXXX;user id=sa;password=XXXXXX;";
string sSql = "insert into IP(ip,DateTime,area) values('" + GetIP() + "',getdate(),'"+GetstringIpAddress+"')";
SqlConnection conn = new SqlConnection();
conn.ConnectionString = sConnectionString;
SqlCommand cmd = new SqlCommand();
cmd.CommandText = sSql;
cmd.Connection = conn;
conn.Open();
cmd.ExecuteNonQuery();
conn.Close();
}
public string GetIP()
{
string result = String.Empty;
result = HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
if (string.IsNullOrEmpty(result))
{
result = HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"];
}
if (string.IsNullOrEmpty(result))
{
result = HttpContext.Current.Request.UserHostAddress;
}
if (string.IsNullOrEmpty(result))
{
return "127.0.0.1";
}
return result;
}
public static string GetstringIpAddress(string strIP)//strIP为IP
{
string GetIP = strIP;
string sURL = "http://www.youdao.com/smartresult-xml/search.s?type=ip&q="+strIP+"";//youdao的URL
string stringIpAddress = "";
using (XmlReader read = XmlReader.Create(sURL))//获取youdao返回的xml格式文件内容
{
while (read.Read())
{
switch (read.NodeType)
{
case XmlNodeType.Text://取xml格式文件当中的文本内容
if (string.Format("{0}", read.Value).ToString().Trim() != strIP)//youdao返回的xml格式文件内容一个是IP,另一个是IP地址,如果不是IP,那么就是IP地址
{
stringIpAddress=string.Format("{0}", read.Value).ToString().Trim();//赋值
}
break;
//other
}
}
}
return stringIpAddress;
}
}
[最优解释]
"xxxx" + GetstringIpAddress("xxx")+"xxxx"
[其他解释]
自己顶111111111
[其他解释]
楼主,你这问题很明显啊,sql语句有问题,调试下把sql语句拿到数据库执行下看看,我感觉那引号都有问题
[其他解释]
再补充一下,
public static string GetstringIpAddress(string strIP)//strIP为IP
{
里如何写strIP = 上面已经获取的GetIP()
[其他解释]