Dove posso trovare esempi e documentazione upshot.js?
-
27-10-2019 - |
Domanda
Steve Sanderson ha tenuto presentazioni molto interessanti a Techdays 2012 nei Paesi Bassi. In uno di essi Ha presentato Una libreria che ha usato per la comunicazione client-server nell'applicazione MVC: Upshot.
Sono stato davvero sorpreso quanto fosse facile usarlo, quindi volevo scaricarlo e testarlo. Ho trovato il link per il download qui attraverso Nuget, ma non riesco a trovare alcuna documentazione. Qualcuno ha qualcosa che funziona? Apprezzerei anche il codice di esempio che Steve ha mostrato come durante la presentazione.
MODIFICARE:
Ho trovato la presentazione online a cui ho partecipato a Techdays. Vale la pena vedere così tanto. Avrai un'occhiata a ciò di cui è capace e avrai anche un'idea di come iniziare. Buona fortuna e buon divertimento.
Il link: http://channel9.msdn.com/events/techdays/techdays-2012-the-netherlands/2159
Soluzione
Ne ho trovato uno che è uno dei campioni MS per le spa (che potrebbe essere l'unico per ora):
ASP.NET Single Page Application (SPA) Bigshelf
Il tutorial completo di questo progetto è disponibile qui: Bighelf
Modificare:
Vedi questo tweet da Steve Sanderson: https://twitter.com/#!/stevensanderson/status/171561402597773312
Stiamo impostando un sito Web per Upshot/Spa in questo momento. Spero che andrà in diretta questa settimana! Scusa il ritardo.
Altri suggerimenti
EDIT: Vedi il post sul blog di Steven qui con codice di download di esempio: http://blog.stevensanderson.com/2012/03/06/single-page-application-packages-and-samples/
Non so come accedere all'helper, mi piacerebbe sapere così posso giocarci :-)
Questo sembra fare il trucco per ora:
<script src="../../Scripts/knockout-2.0.0.js" type="text/javascript"></script>
<script src="../../Scripts/upshot.js" type="text/javascript"></script>
<script src="../../Scripts/upshot.compat.knockout.js" type="text/javascript"></script>
<script type="text/javascript">
upshot.metadata({ "CLASSNAME:#NAMESPACE":{ "key": ["aId"],
"fields": {
"aId": { "type": "Int32:#System" },
"Title": { "type": "String:#System" },
"Description": { "type": "String:#System" },
"Effort": { "type": "Double:#System" }
}
}
});
var myDataSource = new upshot.RemoteDataSource({
providerParameters: {
url: "http://localhost:7018/api/CONTROLLERNAME",
operationName: "",
operationParameters: {}
},
entityType: "CLASSNAME:#NAMESPACE"
});
myDataSource.refresh(function (results) {
alert(results[0].Title());
});
</script>
Devi sostituire ClassName: #Namespace con il tuo nome classe e spazio dei nomi, quindi ad esempio "Workitem:#mysystem.models".
E sostituire il controllename con il nome effettivo del controller, nel caso di questo
public class MyTasksController : ApiController
Dovrai sostituire il controllername con Mytasks
E riempire le cose all'interno dei metadati secondo gli oggetti del tuo modello. Spero che i campioni di codice vengano presto online, perché questo è un sacco di lavoro :-(
Guardando l'esempio Bigshelf, sono alcuni pacchetti extra disponibili che puoi usare.
Non li ho ancora provati da solo, ma dai un'occhiata:
http://nuget.org/packages/upshot
http://nuget.org/packages/singlepagepplication
Penso che il pacchetto spa contenga i metodi di estensione HTML HTML HTML