Task <> enthält keine Definition für 'GetAwaiter'
Klient
iGame Channel = new ChannelFactory<iGame> ( new BasicHttpBinding ( BasicHttpSecurityMode . None ) , new EndpointAddress ( new Uri ( "http://localhost:58597/Game.svc" ) ) ) . CreateChannel ( );
public Task<SerializableDynamicObject> Client ( SerializableDynamicObject Packet )
{
return Task<SerializableDynamicObject> . Factory . FromAsync ( Channel . BeginConnection , Channel . EndConnection , Packet , null );
}
Vertrag
[OperationContract ( AsyncPattern = true )]
IAsyncResult BeginConnection ( SerializableDynamicObject Message , AsyncCallback Callback , object State );
SerializableDynamicObject EndConnection ( IAsyncResult Result );
Bedienung
public IAsyncResult BeginConnection ( SerializableDynamicObject Message , AsyncCallback Callback , object State )
{
dynamic Request = Message;
dynamic Response = new SerializableDynamicObject ( );
if ( Request . Operation = "test" )
{
Response . Status = true;
}
Response . Status = false;
return new CompletedAsyncResult<SerializableDynamicObject> ( Response );
}
public SerializableDynamicObject EndConnection ( IAsyncResult Result )
{
return ( Result as CompletedAsyncResult<SerializableDynamicObject> ) . Data;
}
Bereitstellen des Dienstes vom Silverlight-Client
private async void myButton ( object sender , RoutedEventArgs e )
{
dynamic Request = new SerializableDynamicObject ( );
Request . Operation = "test";
var task = Client ( Request );
var result = await task; // <------------------------------ Exception
}
Ausnahme
Task<SerializableDynamicObject > does not contain a definition for 'GetAwaiter'
Was'Es ist falsch ?
Bearbeiten 1:
Kurz,
Visual Studio 2012 RCSilverlight 5-Anwendung verbrauchtSpiel WCF 4 Service gehostet inASP.net 4-Anwendung mit ChannelFactory-Technik über SharedPortable Library .NET4 / SL5 enthält dieiGame Schnittstelle mitAsync CTP
Grafik:
ASP.NET<= Klassenbibliothek (Spiel)<= Portable Library (iGame)=> Silverlight
Bearbeiten 2:
Microsoft.CompilerServices.AsyncTargetingPack.Silverlight5.dll wurde meinem SL5-Client hinzugefügtusing System. Einfädeln. Aufgaben;