“ne contient pas une définition...et aucune méthode d'extension..” erreur

Je vais avoir un problème lié au fait que je ne peux pas utiliser un des objets de la méthode en raison de cette erreur:

Ne contient pas de définition...et aucune méthode d'extension...

Il est très lié à ce question. Je suis en train de faire ce qui est donné comme la réponse à cette question, mais j'ai toujours cette erreur.

namespace MyProject.ViewModel
{
    public class NetworkHealthViewModel : ViewModelBase
    {
        private IDataService _dataService;
        public ObservableCollection<NetworkBandwidthModel> NbicNetworkBandwidth
        public ObservableCollection<NetworkPortalStatusModel> NbicNetworkPortalStatus

        public NetworkHealthViewModel()
        {
            _dataService = new DataServiceNetworkHealth();
            NbicNetworkBandwidth       = new ObservableCollection<NetworkBandwidthModel>();
            NbicNetworkPortalStatus    = new ObservableCollection<NetworkPortalStatusModel>();
            _dataService.LoadChartItems(NetworkBandwidthLoaded, NetworkBandwidthLoadedFailed);
            _dataService.LoadPortalStatus(NetworkPortalStatusLoaded, NetworkPortalStatusLoadedFailed);
         }

L'erreur se situe au LoadPortalStatus(). LoadChartItems() c'est bien. NetworkBandwidthLoaded et NetworkPortalStatusLoaded sont délégués.

NetworkPortalStatusLoaded est posé à peu près la même que NetworkBandwidthLoaded:

private void NetworkPortalStatusLoaded(IEnumerable<ChartModel> portalStatItems) 
{
    NbicNetworkPortalStatus.Clear();

    var networkPortalItems = from item in portalStatItems
                             where ((NetworkPortalStatusModel)item).Unit == "Portal"
                             select item;

    foreach (var item in networkPortalItems)
    {
        NbicNetworkPortalStatus.Add((NetworkPortalStatusModel)item);
    }

    Message = "Network Portal details loaded";
}

Mon DataServiceNetworkHealth classe est définie comme:

namespace MyProject.DataServices
{
    public class DataServiceNetworkHealth : IDataService
    {
        private Action<IEnumerable<ChartModel>> _delagateSuccess;
        private Action<Exception> _delagateFail;
        private String _portalHtmlResponse;

        public void LoadChartItems(Action<IEnumerable<ChartModel>> success, Action<Exception> fail)
        {
          ....
        }

        public void LoadPortalStatus(Action<IEnumerable<ChartModel>> success, Action<Exception> fail)
        {
          ....
        }
    }
}

Méthode LoadChartItems() est définie dans l'interface IDataService, mais LoadPortalStatus ne l'est pas. Peut-être que c'est là que réside le problème. Il y a d'autres DataServiceX classes qui n'utilisent pas LoadPortalStatus.

Je sais que c'est un long post, mais j'ai pensé préférable de donner toutes les infos à l'avant. 🙂 Merci pour toute aide!

Ce exactement méthode ne peut pas être localisé par le compilateur?!
Je ne vois pas LoadPortalStatus méthode dans votre code...
Si le DataServiceNetworkHealth classe ne déclare pas la LoadPortalStatus méthode, alors vous ne pouvez pas appeler cette méthode sur une instance de cette classe. Simple. Ce qui me manque? 🙂
Où est votre LoadPortalStatus méthode déclarée. Je ne vois pas tout et c'est pourquoi il est erroring.
Oui. C'était un copier-coller de l'erreur. Je viens de mettre à jour le code post. Merci pour l'attraper!

OriginalL'auteur sshirley | 2012-05-08