ViewModelを使用してビューにforloopを実装しようとすると問題が発生します。エラーCS0135: 'モデル'が 'System.Web.Mvc.ViewPage <TModel>。モデル'と競合します。
私はこの私の見解についてのViewModel
public class EventDashboard
{
public int Id {get;set;}
public string Name {get;set;}
public string Email {get;set;}
public string Phone {get;set;}
public ICollection<FighterDetails> FightersFees{ get; set; }
public void LoadFighterDetails(int eventId, int fighterId, aContext ac, bContext bc){
Fighters fighter = ac
.Fighters
.Include(npo => npo.FighterAddress)
.FirstOrDefault(npo => npo.FighterId== fighterId);
this.Name = fighter.Name;
this.Email = fighter.Email;
this.Phone = fighter.Phone;
LoadFees(bc, fighterId);
}
public void LoadFees(bContext bc, int fighterId)
{
var fees = bc.Fees.Where(f => f.fighterId == fighterId);
FightersFees = new List<FighterDetails>();
foreach(var f in fees){
this.FightersFees.Add(new FighterDetails{
//fill the properties
});
}
}
}
public class FighterDetails
{
public string FighterName { get; set; }
public int fighterId { get; set; }
public decimal FighterFee { get; set; }
}
あります
<% foreach(var d in Model.Fighters){ %>
<%} %>
を、それは(被写体に)そのエラーを押し出す続けます。なぜそれがビューモデルで起こるのだろうか。私がこのエラーを理解するのを助ける方法に関する考えは非常に高く評価されています。
EDIT:
はコード
の残りの部分を追加し、プロジェクトは現在、EF 4.0を使用しています。それが適切かどうかはわかりません。
エラーが発生した行は本当ですか?あなたのビューのどこかに 'Model'という別の変数を宣言したようです。 –
ええ、同じ行。たとえそれをtelerikグリッドに入れようとしても、それは私にそのエラーを与えます。 – gdubs
ビューからさらにコードを挿入できますか? – jrummell