IDataService (WCF データ サービスとのやり取りのラッパー) をリセットしようとしており、SimpleIoc.Default に格納されているため、コンテキストと追跡しているエンティティを空にすることができます。コンテナからすべてを削除するリセットを使用したくありません。起動時に IDataService を登録します。
SimpleIoc.Default.Register<IDataService, DataService>();
これを試していますが、期待どおりに機能せず、次の例外が発生しています。
{System.ArgumentException: An item with the same key has already been added.
at System.ThrowHelper.ThrowArgumentException(ExceptionResource resource)
at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)
at GalaSoft.MvvmLight.Ioc.SimpleIoc.Register[TInterface,TClass](Boolean createInstanceImmediately)
at GalaSoft.MvvmLight.Ioc.SimpleIoc.Register[TInterface,TClass]()
at Bootstrap.ResetDataService()}
public static void ResetDataService()
{
try
{
SimpleIoc.Default.Unregister<IDataService>();
SimpleIoc.Default.Register<IDataService, DataService>();
}
catch (System.Exception)
{
throw;
}
}