Я действительно смущен. Мой 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 и все результаты моего пинга будут сохранены в файл, который я создал из Program.cs. Может кто-нибудь помочь мне выяснить, как я могу это сделать?
В вашем файле 'Program.cs' вам необходимо * создать экземпляр * вашего класса' WebSitePing'. Затем вы сможете использовать этот экземпляр для вызова метода 'Ping()'. –
, альтернативно, сделать метод, который вы хотите вызвать static (он, похоже, не полагается на какие-либо встроенные переменные), но я согласен с тем, что лучший подход, вероятно, просто создает экземпляр WebSitePing. –
Создайте экземпляр объекта WebSitePing, выполнив var a = новый WebSitePing() 'в' Program.cs'. Затем просто вызовите метод, выполнив 'a.Ping()'. –