我有一個問題,即我不能使用,因爲這個錯誤的對象的方法:「不包含定義...並沒有擴展方法。」錯誤
Does not contain a definition...and no extension method...
這是非常與此相關的question。我正在做的是作爲這個問題的答案,但我仍然得到這個錯誤。
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);
}
錯誤在於LoadPortalStatus()。 LoadChartItems()很好。 NetworkBandwidthLoaded和NetworkPortalStatusLoaded是代表。
NetworkPortalStatusLoaded被佈置幾乎是一樣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";
}
我DataServiceNetworkHealth類定義爲:
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)
{
....
}
}
}
方法LoadChartItems()在接口IDataService定義,但LoadPortalStatus是不。也許這就是問題所在。還有其他DataServiceX類不使用LoadPortalStatus。
我知道這是一篇很長的文章,但我認爲最好先提供所有信息。 :-) 謝謝你的幫助!
什麼**精確**方法不能找到編譯器?! – abatishchev
我在代碼中看不到'LoadPortalStatus'方法... –
如果DataServiceNetworkHealth類未聲明LoadPortalStatus方法,那麼您無法在該類的實例上調用該方法。簡單。我錯過了什麼? :) –