MVC3 VS2010 と SQL Server 2008 Express を使用して、2 つの SQL Server テーブルに基づいてフィルタリングし、結果を表示しようとしています。1 つのテーブルはクライアント テーブルで、もう 1 つはエージェント テーブルです。これらは共通の ClientAgentID をクライアント テーブルに持ち、ID を Agents テーブルに持ちます。エージェントはログに記録し、エージェントに割り当てられたクライアントを表示できるはずです。これを行うための最良の方法について何かアイデアがあれば、私を助けてください。これまでのところ、クライアントコントローラーでフィルタリングしようとしていますが、ここに私が持っているものがありますが、メッセージはタイトルにあります。
public ActionResult Index()
{
//This displays all the clients not filtered by the Agent ID number
//var clientItems = db.MVCInternetApplicationPkg;
//return View(clientItems.ToList());
//Trying to filter by the agent name given in the login page then finding
//the agent ID
var getAgentID = from a in db.AgentsPkg
where a.AgentLogin == User.Identity.Name
select a.ID;
var clientItems = from r in db.MVCInternetApplicationPkg
where Convert.ToString(r.ClientAgentID)
== Convert.ToString(getAgentID)
select r;
//THIS IS THE LINE OF CODE THAT SHOWS THE ERROR MESSAGE
return View(clientItems.ToList());
}
これは Music Store の後で初めての MVC プロジェクトなので、喜んで学び、助けやアドバイスを受け入れます。乾杯
これが私が最終的に使用したソリューションです。これが良いアプローチである場合は、フィードバックをいただければ幸いです
public ActionResult Index()
{
var innerJoint = from agents in db.AgentsPkg where agents.AgentLogin == User.Identity.Name
join clients in db.MVCInternetApplicationPkg on agents.ID equals clients.ClientAgentID
select clients;
return View(innerJoint.ToList());
}