C# Microsoft.Practices.ServiceLocation.ActivationException

C# Microsoft.Practices.ServiceLocation.ActivationException,c#,wpf,C#,Wpf,我正在尝试使用ServiceLocator创建一个实例 /// <summary> /// Gets the MediaPlayer property. /// </summary> [SuppressMessage("Microsoft.Performance", "CA1822:MarkMembersAsStatic", Justification = "This non-static member is needed for data binding purpose

我正在尝试使用ServiceLocator创建一个实例

/// <summary>
/// Gets the MediaPlayer property.
/// </summary>
[SuppressMessage("Microsoft.Performance", "CA1822:MarkMembersAsStatic", Justification = "This non-static member is needed for data binding purposes.")]
public MediaPlayerViewModel MediaPlayer
{
    get
    {
        try
        {
            return ServiceLocator.Current.GetInstance<MediaPlayerViewModel>();
        }
        catch (Exception e)
        {
            System.Console.WriteLine(e.ToString());
            return null;
        }
    }
}
//
///获取MediaPlayer属性。
/// 
[SuppressMessage(“Microsoft.Performance”,“CA1822:MarkMembersAstatic”,justionment=“此非静态成员是数据绑定所必需的。”)]
公共媒体播放服务模型媒体播放器
{
得到
{
尝试
{
返回ServiceLocator.Current.GetInstance();
}
捕获(例外e)
{
System.Console.WriteLine(如ToString());
返回null;
}
}
}
但我有以下理由:

未处理Microsoft.Practices.ServiceLocation.ActivationException 按用户代码HResult=-2146233088消息=发生激活错误 尝试获取MediaPlayerViewModel类型的实例时,按“”键
Source=Microsoft.Practices.ServiceLocation StackTrace: 在Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetInstance(键入 服务类型,字符串键)输入 c:\Projects\CommonServiceLocator\main\Microsoft.Practices.ServiceLocation\ServiceLocatorImplBase.cs:line 53 位于Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetInstanceService 在里面 c:\Projects\CommonServiceLocator\main\Microsoft.Practices.ServiceLocation\ServiceLocatorImplBase.cs:line 90 在Verint.PI2.MediaPlayer.UI.ViewModel.ViewModelLocator.get_MediaPlayer()上 在c:\Users\ekreiczer\Documents\visualstudio中 2012\Projects\player\Verint.PI2.MediaPlayer.UI\ViewModel\ViewModelLocator.cs:line 73.例外情况: Microsoft.Practices.Unity.ResolutionFailedException HResult=-2146233088 Message=依赖项解析失败,type=“Verint.PI2.MediaPlayer.UI.ViewModel.mediaplayervewmodel”,name= “(无)”。解析时发生异常。例外情况是: InvalidOperationException-当前类型, Verint.PI2.MediaPlayer.UI.Services.IDialogService是一个接口和 无法构造。是否缺少类型映射


我不知道如何键入map,有人能帮忙吗?

mediaplayervewmodel
很可能取决于
Verint.PI2.MediaPlayer.UI.Services.IDialogService
的实现

查看构造函数和
mediaplayervewmodel
的属性以验证这一点


您忘了将
Verint.PI2.MediaPlayer.UI.Services.IDialogService映射到您的引导程序中的实现。

我对这种编程不熟悉,您能建议如何映射吗?构造函数确实依赖于IDialogService