原文地址:Silverlight可否实现获取本地IP,主机名呢
#region ICompany Members
public string getip()
{
return HttpContext.Current.Request.UserHostAddress;
}
#endregion
就几个关键点,没有完整代码:
Request.UrlReferrer 取上一访问地址
获取客户端ip
userip = Request.ServerVariables("HTTP_X_FORWARDED_FOR")这个是代理的ip
userip2 = Request.ServerVariables("REMOTE_ADDR")这个是真实的ip
发送请求的客户或客户代理的主机名
request.servervariables("REMOTE_HOST")
文章来自学IT网:http://xueit.com/html/2009-11-15/21-181067219893.html
Silverlight运行在一个受限的环境中,很多本地资源是无法访问的,但是我们可以通过在ASPX页面里写代码获取IP地址,然后传给Silverlight控件。
比如(原文地址):
1,在aspx页面里添加aspilverlight控件;
2,在页面的后台代码的Page_Load里加入如下代码:
3,在Silverlight项目的App.xaml.cs里添加如下代码到Application_Startup 中:
private void Application_Startup(object sender, StartupEventArgs e) {
// Load the main control
string ip = e.InitParams["IpAddress"];
this.RootVisual = new Page(ip);
}
4,修改Page.xaml.cs的构造器接受参数:
public Page(string ipAddress) {
}