Frage

Steve Sanderson hielt bei TechDays 2012 in den Niederlanden sehr interessante Präsentationen. In einem von ihnen er präsentierte Eine Bibliothek, die er für die Kunden-Server-Kommunikation in MVC-Anwendung verwendet hat: Upshot.

Ich war wirklich erstaunt, wie einfach es war, es zu verwenden, also wollte ich es herunterladen und testen. Ich habe den Download -Link hier gefunden durch Nuget, aber ich kann keine Dokumentation finden. Hat jemand etwas, das funktioniert? Ich würde auch den Beispielcode schätzen, den Steve während der Präsentation zeigte.

BEARBEITEN:

Ich fand die Online -Präsentation, an der ich an TechDays teilgenommen habe. Es ist soooo viel sehenswert. Sie werden einen Blick darauf werfen, wozu das Unternehmen fähig ist, und auch eine Idee bekommen, wie Sie damit beginnen können. Viel Glück und hab Spaß.

Die Verbindung: http://channel9.msdn.com/events/techdays/techdays-2012-therlands/2159

War es hilfreich?

Lösung

Ich habe eine gefunden, die eines der MS -Proben für Spas ist (was möglicherweise der einzige sein könnte):

ASP.NET Single Page Application (SPA) Bigshelf

Das vollständige Tutorial zu diesem Projekt finden Sie hier: Bigshelf

Bearbeiten:

Siehe diesen Tweet von Steve Sanderson: https://twitter.com/#!/stevensanderson/status/1715614025977773312

Wir richten gerade eine Website für Upshot/Spa ein. Hoffentlich wird diese Woche live gehen! Entschuldigung für die Verspätung.

Andere Tipps

Bearbeiten: Siehe Blog -Beitrag von Steven hier mit Beispiel -Download -Code: http://blog.stevensanderson.com/2012/03/06/single-page-application-package--Samples/

Ich weiß nicht, wie man auf den Helfer zugreift, würde gerne wissen, dass ich damit spielen kann :-)

Dies scheint vorerst den Trick zu tun:

<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>

Sie müssen Klassenname: #NameSpace durch Ihren Klassennamen und Ihren Namespace ersetzen, zum Beispiel: "WorkItem:#mySystem.models".

Und ersetzen Sie den Controllername durch den tatsächlichen Namen des Controllers, im Fall davon

public class MyTasksController : ApiController 

Sie müssen den Controllername durch Mytasks ersetzen

Und füllen Sie das Zeug in den Metadaten gemäß Ihren Modellobjekten. Ich hoffe, die Code-Beispiele kommen bald online, denn dies ist eine Menge Arbeit :-(

Wenn Sie sich das Beispiel von BigShelf ansehen, können Sie einige zusätzliche verfügbare Pakete verwenden, die Sie verwenden können.

Ich habe sie noch nicht selbst ausprobiert, aber werfen Sie einen Blick auf:

http://nuget.org/packages/upshot

http://nuget.org/packages/singlepageapplication

Ich denke

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top