2017-08-16 6 views
0

モデルに「名前」列が必要な場合は、「名前」と「姓」の2つの入力があります。ASP.NET MVC 5 - 2つの入力を1つのレコードに結合するには

@Html.Textboxを使用し、別のIDを指定する必要がありますか?@Html.TextboxForを使用する必要がありますか?

投稿をクリックした後、2つの入力テキストをName列に保存するにはどうすればよいですか?

+2

これまで持っていたコードを投稿してください。 – Milk

+0

FirstNameとLastNameのモデルプロパティをNameプロパティと共に作成してください。両方の入力のTextboxForでFirstNameとLastNameを使用します。その後、コントローラーのポストアクションで名前を結合し、Nameプロパティに割り当てます。 –

+0

モデルにプロパティを追加するのではなく、FirstNameフィールドとLastNameフィールドを持つビューモデルを作成します。その後、あなたはあなたがレコードを保存する前にエンティティにしたいものを結合することができます。 – Duston

答えて

1

ここでは、名前と姓の既存のモデルプロパティを維持しながら、完全な名前の読み取り専用プロパティを追加することができます。 (私の例では、それが「姓」としてフォーマットしている)

public class NameViewModel 
    { 
    public string FirstName { get; set; } 

    public string LastName { get; set; } 

    public string FullName 
    { 
     get 
     { 
     return string.Format("{0} {1}", FirstName, LastName); 
     } 
    } 
    } 

は今、あなたは、コントローラのアクションだで、あなたはすぐにmyViewModel.FullNameを呼び出すとフルネームを取得することができるようになりますし、それはあなたが欲しいしかし、フォーマットされます

+0

ありがとう!それは動作します –

+0

@ChrisWangこれがあなたを助けた場合、upvoteして答えを受け入れてください – GregH

関連する問題