2016-05-25 2 views
-1

私はMVC 5のニュースサイトを持っています。ソースという名前のフィールドがあります。ユーザーはドロップダウンリストにすべてのメディアの名前を入れたくありません。ドロップダウンリストの内側にあるメディアを保存して保存したいのですが、ドロップダウンリストの横にテキストボックスが必要です.のようなテキストボックスをグラブする必要があります。編集メソッド内のdropdownListの横にありますが、私は変更DropDownListの横の文字列

public ActionResult Edit(string SourceInput, [Bind(Include = "id,Source,DateM,Issue,Subject")] News_ news_) 
{ 
    if (ModelState.IsValid) 
    { 
     if (SourceInput != null) news_.Source = SourceInput; // SourceInput gets value but ModelState.IsValid prevents code to come here 
     db.Entry(news_).State = EntityState.Modified; 
     . . . . . . 
     db.SaveChanges(); 
     return RedirectToAction("Index"); 
    } 
} 

誰かが私に

01を助けることができる場合、私は感謝を保存することはできませんので、行の値がfalseを返す( ModelState.IsValid)に来て、それがデバッグで見られていますが、ラインに含まれています台の

戦車たくさん

トーマス

+0

空でない 'Errors'コレクションを持つアイテムに対して' ModelState'をデバッグして検査してください。 –

+0

モデルを表示していないか、そのプロパティまたはビューにどの検証属性が適用されていますか。関連するコードを表示します。 –

答えて

0

私の友人の一つは、このノートを送信し、彼のガイドと一緒に私の問題が解決されました: こんにちはトーマス、

をあなたがDropDownListコントロールとソースの検証を削除することができますフィールド。

public ActionResult Edit(string SourceInput, string DropDownListSeletedValue [Bind(Include = "id,Source,DateM,Issue,Subject")] News_ news_) 
{ 
if (ModelState.IsValid) 
{ 
    if (SourceInput != null) news_.Source = SourceInput; // SourceInput gets value but ModelState.IsValid prevents code to come here 

    else if (DropDownListSeletedValue != null) 
    ... //using dropdownslit selected value 
    else 
    ... //set default value 

    db.Entry(news_).State = EntityState.Modified; 
    . . . . . . 
    db.SaveChanges(); 
    return RedirectToAction("Index"); 
} 
} 
+0

友人のアドバイスを無視し、MVCサイトにアクセスして基本を学ぶことをお勧めします。 –

関連する問題