У меня есть два класса. Один из них:Вызов статического метода внутреннего класса с объектом внешнего класса
namespace DataStructures_Algorithms
{
public class BackendService
{
public class LocationServiceQueue
{
private static string deviceId;
private static POI currentPOI;
private static DateTime timeStamp;
private static ConcurrentQueue<DeviceMessage> concurrentQueue = new ConcurrentQueue<DeviceMessage>();
public static void Enqueue(DeviceMessage deviceMessage)
{
try
{
concurrentQueue.Enqueue(deviceMessage);
}
catch (Exception ex)
{
Console.WriteLine("Exception Occured in LocationServiceQueue Class " + ex.ToString());
}
}
}
}
, и теперь я хочу вызвать метод enqueue класса LocationServiceQueue.
backendService.LocationServiceQueue.Enqueue(new DeviceMessage
{
DeviceId = deviceID,
CurrentPOI = currentPOI,
Timestamp = DateTime.Now
});
это сообщение об ошибке, к которому у вас нет доступа. Как я могу получить доступ?
Не могли бы вы показать больше, как вы его называете? Например, вы сначала создали экземпляр класса? –
Я сначала создаю экземпляр объекта backedService. 'BackendService backendService = new BackendService();'. но теперь я застрял, как вызвать этот статический метод внутреннего класса этого объекта backendService –
Если нижеприведенный ответ не работает для вас (это кажется правильным, хотя), я увидел один из ответов в Интернете, они предлагают пройти внешний класс как параметр для внутреннего. Возможно, это может помочь: [Могу ли я получить доступ к внешним объектам класса во внутреннем классе] (http://stackoverflow.com/questions/2957900/can-i-access-outer-class-objects-in-inner-class) –