2016-05-12 16 views
0

このエラーメッセージは 'Error 2'Model'が 'System.Web.Mvc.WebViewPage.Model'宣言と衝突していますが、修正する方法がわかりません。モデルと宣言の衝突

public partial class Person 
    { 
     [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", 
     "CA2214:DoNotCallOverridableMethodsInConstructors")] 
     public Person() 
     { 
     } 
     public int PersonID { get; set; } 
     public string FullName { get; set; } 
     public string FirstName { get; set; } 
     public virtual EHR_Gender EHR_Gender { get; set; } 
     public int GenderID { get; set; } 
     public virtual Gender Gender { get; set; } 
    } 

私はこの部分クラスを作成し、SelectListの項目のリストを渡すことができるようにGenderDataプロパティを追加します。

public partial class Person 
    { 
     public IEnumerable<SelectListItem> GenderData { get; set; } 
    } 

私は、コードの以下の部分で競合エラーメッセージを取得しています。

@Html.DropDownListFor(m => m.Gender.Description, Model.GenderData, new { @class = "form-control" }) 

私はGoogleで解決策を探しました。修正プログラムの大部分は、「モデル」の代わりに「モデル」を使用している人と関係がある。これはここでは当てはまりません。

+1

あなたが表示したコードは、そのエラーと他のコードによるものではありません。これは一般的に '@ Html.SomeMethod(Model => Model.SomeProperty)'(大文字の 'M'モデルに注意してください)の後に'

@Model.SomeProperty
' –

+0

@Stephen Mueckeのようなものを使用した結果です。私の机を離れる。その後、私はあなたのコメントを読んで、自分のコードをチェックするために戻ってきます。私は戻ってきて、細心の注意を払ってコードを調べます。それから、私はすべての隠されたフィールドを見て、それを見つけました。あなたは答えとしてあなたのコメントを入れていただけますか? –

答えて

1

あなたが表示したコードは、そのエラーにはなりません。そのどこかにあるので、生成されたあなたは上記の要素の順序を入れ替えた場合ということも、あなたが

@Html.TextBoxFor(Model => Model.SomeProperty) 
.... 
<div>@Model.AnotherProperty</div> 

例えば、@Modelへの別の参照が続く資本Mモデルを使用して表現してHtmlHelperメソッドを使用しているノートを表示します、別の例外が発生します。