2009-06-15 9 views
1

次の問題を解決するには、単純なサーバーサイドスクリプトソリューションが必要です。 クライアントはASP.NET MVCでサイトを作成しています。私はサイト全体をコーディングしていますが、単純なスクリプトを使って後から拡張できるセクションがあります。例:ASP.NETにシンプルなサーバーサイドスクリプトを追加する

誕生日はいつですか?
__/__/____   [x]は年に

を表示しませんこれは、(あなたの誕生日がある場合は?)タイトルを取るために、日付を、チェックボックスが必要であることを示すための方法を必要とします、チェックボックスのテキストが表示されます。それはすべて単純なマークアップです。最終的な必要性は、出生年を表示するかどうかの条件です。この情報を後で表示するとき。

スクリプト言語としてJavaScriptを使用し、それをクライアント側で実行することを検討しました。これは上の簡単な例では機能しますが、実際の情報の中には、JavaScriptでできるほど簡単に見えるものがありすぎるほど敏感です。むしろすべてのデータをサーバー側で処理したいと思います。

答えて

3

あなたのクライアントがJavaScriptでこれを行うのに十分なスマートな人物を持っている場合、ビューとコントローラを直接編集するだけの理由でC#(またはVB.NET?

埋め込みスクリプト言語やプラグインアーキテクチャの複雑さが増してアプリケーションをビルドすることは、過剰なもののように思えますし、C#を知り、必要に応じてこれらの簡単な変更を行う人がメンテナンスを困難にするでしょう。

私はC#またはVB.NETはかなり良いサーバー側の言語だと言いますが、なぜ別のものを探すのでしょうか?

3

私はDennisの答えをエコーし​​、Webサイトのその部分にSharePoint(WSS 3.0)を使用することを検討したいと考えていると付け加えます。これはASP.NETとWindows Workflow Foundationをベースにしているため、外国の技術ではありません。

一方、プログラミングの背景がほとんどまたはまったくない人によって拡張されるように作られています。変更は、SharePoint UIを使用するか、現在無料のMicrosoft Office SharePoint Designerを使用して行うことができます。

曖昧な要件に対応するためには、サイト全体を過度に一般化する必要はありません。

2

これは、おそらくSharePointやWWFのような厄介な複雑なものを必要としないように、十分に定義されています。ほんの少しのオブジェクトfooです。要件の説明から:

1)これらの "DateOptionFields"を格納する機能は、おそらくユーザーレコードに戻って追跡される可能性があります。もう一度、問題の説明から、QuestionType、QuestionTitle、CheckedTrue、DateSupplied、ShouldShowYearの6つのフィールドといくつかの識別子が表示されます。

2)これらの余分な質問を管理する機能は、実際にはアプリと要件によって異なります。 「余分な」質問がすべてのユーザーには当てはまらないが、一般的にはあまりにも粘りすぎない場合は、ちょっとしたことがある。

適切なユーザーの適切な場所にUIに「余分な」質問を入力してください。

+0

"DateOptionFields"の6つのフィールドがありますが、これは簡単な例です。おそらく知られていない他のフィールド/オプションの種類のために、クライアントが追加したいと考える余分なフィールドはいくつありますか?このようなことを行うCMSシステムはありますが、新しいアプリケーションに組み込むには多くの作業が必要であり、長期的には維持するのが難しくなります。 – CoderDennis

+0

私はOPの質問から完全に外れています - 彼はそれが自明であることを示唆していますが、彼は追跡しているデータではなく、セキュリティを扱っていることを示しています。私はあなたのアプリで何らかのDSLを使ってホイールを再発明しようとするのがベストアイデアではないという一般的な考え方には同意していません。これらの動的システム状況に身をおいた場合、余分なフィールドをスキップしてXMLペイロードに移行することをお勧めします。はるかに柔軟性があり、DBAビジネスから抜け出すことができます。 –

関連する問題