2017-11-20 4 views
0

私は長い時間をかけてMVCを使い始めましたが、今は本当に簡単なことができません。MVC - 条件に基づいてドロップダウンにCSSプロパティを追加する方法

Modelクラス:

public class TaskDetails 
{ 
    public string ProjectID { get; set; } 
    public string ProjectName { get; set; } 
    public DateTime StartDate { get; set; } 
    public DateTime EstimatedDate { get; set; } 
    public string TaskDescription { get; set; } 
} 

コントローラー:

List<SelectListItem> query = DE.tblEmployees 
           .Select(c => new SelectListItem { Text = c.Name, Value = c.Name }) 
           .ToList(); 
ViewBag.Categories = query; 
return View(); 

ビュー:

<div class="dropdown"> 
@Html.DropDownList("CategoryID", (List<SelectListItem>)ViewBag.Categories, "--User Name--") 
</div> 

これは、ソースとその完璧に働いているが、私がやりたいことは隠すことですドロップダウンのすべての特定のオプションValue != NewTask

+1

'NewTask'は何ですか? – Shyju

+0

Text = c.Name、Value = c.Nameあなたは本当ですか?? –

答えて

1

あなたには解決策がありませんが、念のためです。

List<SelectListItem> query = DE.tblEmployees 
    .Select(c => new SelectListItem { Text = c.ProjectName, Value = c.ProjectName }) 
    .Where(x => x.Value.Equals("NewTask")) 
    .ToList(); 

、または直接ビューで:

@Html.DropDownList("CategoryID", ((List<SelectListItem>)ViewBag.Categories).Where(x => x.Value.Equals("NewTask")), "--User Name--") 
0

私が間違っていない場合は、ドロップダウンに10を超えるProjectIDを表示したいですか?

あなたは、これが役立ちますあなたのコントローラで、

DE.tblEmployees.Select(c => new SelectItem 
         {Text = c.Name, Value = c.Name }).Where(x => x.ProjectID > 10).ToList(); 

・ホープことを行うことができます。

+0

あなたは正しい質問に答えましたか?申し訳ありませんが、もっと見てみると、特定のプロジェクトIDが10ビットを超えているところがわかりません(質問が編集されずに編集が表示されない限り) – Pete

+0

申し訳ありませんが、最初に誤って追加してください更新 – Ancient

関連する問題