Asp.net MVC2:私はmvcアプリケーションに多くのドロップダウンリストを持っています。最初は、ユニークなIDと名前でそれぞれのテーブルを作成し、コントローラとビューで参照していました。アプリケーションが大きくなったので、lookuptypeとlookupvalueが複合主キーとして含まれているルックアップテーブルを使用し、その中のドロップダウンリストのすべての値を入力することをお勧めしました。私はインターネット上のすべてを見てきました、mvcのために使用される唯一の方法は、各ドロップダウンリストの1つのテーブルです!誰かが私にそれを実装する方法を説明することができます、そして詳細に私は完全に失われているbecozしてください。チュートリアルへのリンクも素晴らしいでしょう。 私はvb.netとlinqをSQLに使用しています。mvcフレームワークでルックアップテーブルを実装する方法は?
答えて
私は実際にやや異なるアプローチを使用しました。私は複合主キー、LookupNameとLookupValueを持つテーブルを作成しました。次にdatacontextで、私はパラメータとしてlookupnameを取るメソッドを宣言し、lookupnameがこのパラメータと一致するlookupvaluesのリストを返します。元のテーブル(ex.Contact)では、statusと呼ばれるフィールドを作成しました。ここでは、選択した値が保存されます。次に、コントローラでは、ビューデータを使用してドロップダウンリストを作成しました。
例:_dbは
ViewDataを( 'ステータス')新しいSelectListの(_db.Getlookupname( 'ステータス')、 'lookupname'、 'lookupname')=のDataContextを表し
と、ビューで
html.dropdownlist(「ステータス」)
私はまた、ターゲット表「コンタクト」で発見されているのと同じフィールド名「ステータス」でドロップダウンリストの名前。
それはどんな複雑さやエラーもなく機能しました。 助けてくれてありがとう。そして、これが他の誰かに役立つことを願っています!
テーブルに列ID
,Name
、Value
があるとします。今度はテーブルが1つしかなくても、このテーブルはほとんど同じように見えるでしょう:
create table Lookup
(
LookupID int not null identity
primary key,
LookupTypeID int not null
references LookupType(LookupTypeID),
Name nvarchar(50) not null,
Value int not null,
unique(EnumTypeID, Name)
)
go
このテーブルは、同じタイプの名前が衝突しないようにします。
とにかく。もちろん、あなたが特定の型の値を取得するたびにあなたは常にそれらのIList<EnumValue>
を生成することができますし、ダウン特定の低下にそれらを養う同様のアプリケーション(データではなく)モデルクラス
public class EnumValue
{
public int Id { get; set; }
[Required]
public string Name { get; set; }
[Required]
public int Value { get; set; }
}
を持つことができます。
貴重なデータを提供していないので、このテーブルとクラスでは、内側の動作によっては全く必要ない場合があるので、列/プロパティーValue
を省略することができます。しかし、アプリケーションの要件を知っているので、これを最もよく知ることができます。この列/プロパティの代わりに、IDだけがトリックを行うことができます。
返信ありがとうございます。この問題はどうですか?どうぞご覧ください。事前に感謝... http://stackoverflow.com/questions/29333787/how-to-create-lookup-table-and-define-relationships –
一般的なルックアップサービスを実現するためのチュートリアルの一種です。あなたがやったことと同様に
http://wtfperminute.blogspot.com/2011/02/working-with-reference-data-lookups.html
、おそらくもう少し包括的な。
- 1. javascriptのMVCフレームワークを実装するタイミング
- 2. MVCフレームワークでDDDを実装 - PHP
- 3. Railsでルックアップテーブルを実装する
- 4. IoCフレームワーク実装をデカップリングする方法
- 5. MVCでアイデンティティロールマネージャを実装する方法
- 6. Flaskフレームワークでサーバープッシュを実装する方法は?
- 7. MVCグローバルアクションの実装方法
- 8. OWINなしで.netフレームワークでOpenIdプロバイダを実装する方法
- 9. スイングでJavaでMVCを正しく実装する方法は?
- 10. MVCルックアップテーブル
- 11. mvcで依存関係注入を実装する方法は?
- 12. MVC Javaで自分のコードを実装する方法は?
- 13. ASP.NET MVCでロールを実装する方法は?
- 14. MVC 3でチェックボックスを実装する方法は?
- 15. MVCアプリケーションでオートコンプリートを実装する方法は?
- 16. SwiftでMVCを実装する方法は?
- 17. Asp.net MVCでXMLローカリゼーションを実装する最善の方法は?
- 18. ASP.NET MVCでハードウェアマルチファクタ認証を実装する方法は?
- 19. iOSフレームワークの一部としてログインモジュールを実装する方法
- 20. セキュリティプロトコルを実装する方法.NET 3.5フレームワークのTLS 1.2
- 21. Multi-Tenant-Asp.net MVCアプリケーションを実装する方法は?
- 22. 再生フレームワークにアクセストークンを実装する最善の方法は何ですか
- 23. ASP.NET MVCでhistory.jsを実装する方法
- 24. PHP MVCでデータマッパーパターンを実装する方法
- 25. ASP.NET MVCルートでローカライズを実装する方法
- 26. Asp.net MVCでカスタムOpenIdプロバイダを実装する方法
- 27. C#/ ASP.NET MVCで検索機能を実装する方法
- 28. ASP.NET MVCで招待コードを実装する方法
- 29. Asp.net MVCでオンライン編集のエクセルを実装する方法
- 30. 既存のmvcページで検索エンジンを実装する方法
既存のテーブルのいずれかに列を提供できますか? ID、名前、価値なのですか? –