【发布时间】:2015-10-22 00:10:53
【问题描述】:
我真的很困惑。 我的 Program.cs 如下:
using System;
using System.IO;
using System.Net.NetworkInformation;
using System.Collections.Generic;
namespace PingApp
{
class Program
{
static void Main(string[] args)
{
string filename = @"PingLog.csv";
{
using (var writer = new StreamWriter(filename, true))
{
}
}
}
}
}
然后我有一个名为 WebSitePing.cs 的类,这是我拥有所有代码的地方。这是我的 WebSitePing.cs 类:
using System;
using System.Collections.Generic;
using System.Net.NetworkInformation;
namespace PingApp
{
public class WebSitePing
{
public void Ping()
{
var lstWebSites = new List<string>
{
"www.mearstransportation.com",
"www.amazon.com",
"www.ebay.com",
"www.att.com",
"www.verizon.com",
"www.sprint.com",
"www.centurylink.com",
"www.yahoo.com"
};
foreach (string website in lstWebSites)
{
var roundTripTime = new List<string>();
for (var i = 0; i < 4; i++)
{
try
{
var myPing = new Ping();
var reply = myPing.Send(website, 1000);
if (reply != null)
{
Console.WriteLine("{0}, {1}", website, string.Join(" , ", roundTripTime));
}
}
catch
{
Console.WriteLine("ERROR: You have some TIMEOUT issue");
}
}
}
}
}
}
我必须将我的 WebSitePing.cs 类调用到 Program.cs 中,以便我可以创建 PingLog.csv 文件并运行 WebSitePing.cs 中的代码,我的 ping 的所有结果都将保存到该文件中我从 Program.cs 创建。 有人可以帮我弄清楚我该怎么做吗?
【问题讨论】:
-
在您的
Program.cs文件中,您需要实例化您的WebSitePing类。然后,您将能够使用该实例来调用您的Ping()方法。 -
或者将您想要调用的方法设为静态(它似乎不依赖任何实例化变量),但我同意更好的方法可能只是实例化 WebSitePing
-
通过在
Program.cs中执行var a = new WebSitePing()创建WebSitePing 对象的实例。然后只需通过a.Ping()调用该方法。 -
我是c#新手,能给我举个例子吗?