2009-06-15 17 views
1

Ich benötige eine einfache serverseitige Skriptlösung für das folgende Problem: Mein Client erstellt eine Site in ASP.NET MVC. Ich schreibe die ganze Seite, aber es gibt einen Bereich, den sie später durch einfaches Scripting erweitern können. Zum Beispiel:Hinzufügen von einfachen serverseitigen Skripten zu ASP.NET

Wann haben Sie Geburtstag?
__/__/____   [x] nicht anzeigen das Jahr

Dieser einen Titel zu nehmen braucht (Wann ist Ihr Geburtstag?), Ein Datum, ein Weg, um anzuzeigen, dass eine Checkbox benötigt wird und einen Text für das Kontrollkästchen. Das ist alles einfaches Markup. Der letzte Bedarf ist eine Voraussetzung dafür, ob das Geburtsjahr angezeigt werden soll oder nicht. Wenn diese Informationen später angezeigt werden.

Ich überlegte, JavaScript als meine Skriptsprache zu verwenden und es nur clientseitig auszuführen. Obwohl dies für das obige triviale Beispiel funktioniert, sind einige der realen Informationen zu empfindlich, um sie so einfach zu sehen, wie es in JavaScript möglich ist. Ich würde lieber alle Daten serverseitig verarbeiten.

Antwort

3

Wenn Ihr Klient jemanden hat, der schlau genug ist, dies mit JavaScript zu tun, warum könnte er dann nicht genug C# (oder VB.NET?) Lernen, um die Ansichten und Controller direkt zu bearbeiten?

Der Aufbau Ihrer App mit der zusätzlichen Komplexität einiger eingebetteter Skriptsprache oder Plugin-Architektur scheint übertrieben zu sein und würde es wahrscheinlich schwieriger machen, von jemandem gewartet zu werden, der C# kennt und diese einfachen Änderungen nach Bedarf ausführt.

Ich versuche zu sagen, dass C# oder VB.NET ziemlich gute serverseitige Sprachen sind, warum also nach etwas anderem suchen?

3

Ich würde die Antwort von Dennis wiederholen und hinzufügen, dass sie möglicherweise die Verwendung von SharePoint (WSS 3.0) für diesen Teil der Website in Betracht ziehen möchten. Es basiert auf ASP.NET und Windows Workflow Foundation, also ist es keine fremde Technologie.

Auf der anderen Seite ist es gebaut, um von Personen mit wenig oder ohne Programmierkenntnisse erweitert werden. Änderungen können mithilfe der SharePoint-Benutzeroberfläche oder mithilfe des kostenlosen Microsoft Office SharePoint-Designers vorgenommen werden.

Das sollte mehr als genug Energie für sie sein, und alle ohne zu verallgemeinern Ihre Website, um vage Anforderungen gerecht zu werden.

2

Das ist genug definiert, dass Sie wahrscheinlich nicht schrecklich komplexe Dinge wie Sharepoint oder WWF brauchen, nur ein kleines Objekt-foo. Aus Ihrer Beschreibung der Anforderungen, die Sie benötigen:

1) Einrichtungen zum Speichern dieser "DateOptionFields", die vermutlich zurück zu einem Benutzer-Datensatz zurückverfolgen können. Auch hier sehen Sie aus Ihrer Beschreibung des Problems 6 oder so Felder: QuestionType, QuestionTitle, CheckedTrue, DateSupplied und ShouldShowYear sowie einige Bezeichner.

2) Einrichtungen zur Verwaltung dieser zusätzlichen Fragen - hängt wirklich von der App und den Anforderungen ab. Wird etwas klebriger, wenn die "extra" Fragen nicht für alle Benutzer gelten, aber im Allgemeinen nicht zu klebrig sind.

Dann die "extra" Fragen in die UI an geeigneten Orten für die entsprechenden Benutzer und Sie sind fertig.

+0

6 zusätzliche Felder für "DateOptionFields", die als das triviale Beispiel beschrieben wurde!Wie viele zusätzliche Felder benötigen Sie für andere, vermutlich unbekannte Feld-/Optionstypen, die der Client hinzufügen möchte? Es gibt CMS-Systeme, die solche Dinge tun, aber es in eine neue App zu integrieren, scheint eine Menge Arbeit zu sein und auf lange Sicht schwieriger zu warten. – CoderDennis

+0

Ich gehe die Frage des OP völlig aus - er deutet an, dass es trivial ist, aber er zeigt an, dass die Trivialität mit Sicherheit und nicht mit den Daten, die er verfolgt, zu tun hat. Nicht, dass ich der allgemeinen Idee nicht widerspreche, dass es nicht die beste Idee ist, das Rad mit einem DSL in irgendeiner Form neu zu erfinden. Nun, wenn Sie sich in eine dieser dynamischen System-Situationen begeben, würde ich empfehlen, zusätzliche Felder zu überspringen und zu XML-Nutzdaten zu wechseln. Viel flexibler und Sie verlassen das DBA-Geschäft. –

Verwandte Themen