2016-11-03 6 views
-5

私は、ユーザーがObjectで追加する列またはフィールドを決定し、そのフィールドを作成するために選択したデータ型に応じて、ユーザーが選択したデータ型でそのオブジェクトに対してCRUD操作を実行できます。カスタムフィールド。それは可能かどうか、もしそうなら、それを作るための最適な方法は何ですか? (この操作はすべてブラウザで行われ、コードでは行われません)列をモデルに動的に追加し、関連するフィールドを表示して、ビューasp.net mvc enityframeworkのフィールドデータを追加、編集、および削除しますか?

+0

少なくとも1行のコードを書いてから、起こりうる問題やエラーを解決するための助けを求める必要があります。 – reshad

+0

コメントのための@reshadありがとうございました。私はさまざまなウェブサイトから助けを借りて小さなサンプルをたくさん作成しましたが、新しいプロパティ/フィールドをプログラムの方法で追加したいのであれば、このフォーラムでの検索の時間と考え。しかし、私はここに尋ねたので見つけられませんでした。 –

+0

@時々人々は理解していない、私は解決策を探していて、あなたは腹を見つけることができます。 Chris-Prattに感謝 –

答えて

0

行をテーブルに列を「動的に」追加することはできません。ユーザーが列を追加できる場合、その列は一般的に表に追加され、その表のすべての行には列が追加されます。たとえこのであったとしても、データベースに対するアプリケーション管理者権限を与える必要があります。これは巨大なセキュリティ偽造品です。 Webに公開されているデータベースユーザは、INSERT、UPDATE、SELECT、DELETEのような最小限の権限しか必要としません。何かがSQLインジェクション攻撃などの巨大なリスクにさらされます。これはデータベース101のものなので、先に進んでいく前に開発しているプラ​​ットフォームについて詳しく知りたいと思うかもしれません。

基本的に「設定」表に似たものがほしいと思うようです。これらのものが正常に動作する方法は、 "設定"の名前とその値を文字列として保存することです。また、型の値を文字列として格納することもできます。次に、設定を取得した後、値を適切なタイプに強制することができます。リレーショナルデータベースは非常に静的なので、これは本当に「動的」なことでできることです。データとそのデータの種類を事前に把握する必要があります。

+0

おかげさまで@ Chris-Prattが助けになりました。確かにあなたのやり方を試しますが、静的な列を提供すると、特定のオブジェクトに追加できる列の数に制限が加えられます。 ありがとうございました。 –

+0

列ではなく行です。あなたの列は 'Name'、' Value'、 'Type'のようなものになります。次に、各行には、設定の名前、その設定の値、およびその値のタイプがそれぞれ格納されます。したがって、追加の行だけであるため、理論的に無制限の数のカスタム「設定」を持つことができます。 –

関連する問題