Это ничего не сделало, но вызвало необходимость того, что в противном случае было бы ненужным приведением (или, скорее, заставило меня сбросить кодовую базу и внести изменения самостоятельно).Есть ли причина для этого?
Ссылки:
Источник на Codeplex
Публикация в блоге с источником
Редактировать Вот пример:
DoCommand = new RelayCommand<AsyncCallback>((callBack) =>
{
Console.WriteLine("In the Action<AsyncCallback>");
SomeAsyncFunction((async_result) =>
{
Console.WriteLine("In the AsyncCallback");
callBack.Invoke(new MyAsyncResult(true));
});
});
DoCommand.Execute((iasyncresult) => Console.WriteLine(iasyncresult.IsCompleted));
//Where MyAsyncResult is a class implement IAsyncResult that sets IsCompleted in the constructor
// This will cause the "cannot cast lambda as object" error