2008-08-20 18 views
4

ASP.NET MVCでデータを送信するためのフォームを作成する最善の方法は何ですか?それはScott Guthrieがここに示す通りですか?より良いアプローチがありますか?おそらく文字列の使用量が少ないでしょうか?ASP.NET MVCでフォームを作成する最善の方法は何ですか?

alt text

+0

ほとんどの場合、文字列を使用するとパフォーマンスが少し向上しますが、大部分のWebアプリケーションでは問題ありません。 – BlackTigerX

答えて

2

リファクタリングすることはできませんように私は、本当に私のコード内の文字列が好きではありません。いい方法は、Linq式を使うことです。あなたは、次のステートメントを使用することができますViewDataを、モデル渡される場合:

<%= ShowDropDownBox(viewData => viewData.Name); %> 
... 

public static string ShowDropDownList<T>(this HtmlHelper html, Expression<Action<T>> property) 
{ 
    var body = action.Body as MethodCallExpression; 
    if (body == null) 
     throw new InvalidOperationException("Expression must be a method call."); 
    if (body.Object != action.Parameters[0]) 
     throw new InvalidOperationException("Method call must target lambda argument."); 
    string propertyName = body.Method.Name; 
    string typeName = typeof(T).Name; 

    // now you can call the original method 
    html.Select(propertyName, ...); 
} 

を私は元の溶液がより速く実行している知っているが、私はこの1つは非常にきれいだと思います。

希望すると便利です。

+0

前回私は剃刀のビューを更新しませんでした – BlackTigerX

+0

また、 of Action = T4MVCを使用してマジックストリングを「更新」する –

関連する問題