私はbookからASP.NET MVCを学習する初心者です.IntCを実装するためにNInjectを使用しています。 JobDetailsビュー内の2つの異なるモデルからデータを表示
JobId<PK>
LocationId<FK>
JobName
テーブル名 - - 場所
LocationId<PK>
LocationName
私は場所とJobDetailsのためのエンティティを作成している私は、
以下の表の名前として仕事と場所のためのデータモデルを作成しました以下のように
ジョブ詳細
public class JobDetails
{
[Key]
public int JOBID { get; set; }
public int LocationID { get; set; }
public string JOBNAME { get; set; }
}
public class Location
{
[Key]
public int LocationID{ get; set; }
public string LocationName { get; set; }
}
はまた、私は仕事と場所のための
public interface IJobDetails
{
IEnumerable<JobDetails> jobDetailsInterface { get; }
}
public interface ILocation
{
IEnumerable<Location> locationInterface { get; }
}
public class EFLocationRepository : ILocation
{
public EFDbContext context = new EFDbContext();
public IEnumerable<Location> locationInterface
{
get { return context.Location; }
}
}
public class EFJobRepository : IJobDetails
{
public EFDbContext context = new EFDbContext();
public IEnumerable<JobDetails> jobDetailsInterface
{
get { return context.JobDetails; }
}
}
マイ・モデル・クラス以下のようにジョブの詳細や場所についての私の抽象とコンテキストクラスを持っている場所のとおりです以下
public class JobListViewModel
{
public IEnumerable<JobDetails> jobDetails { get; set; }
}
public class LocationListViewModel
{
public IEnumerable<Location> Location { get; set; }
}
私のJobDetailコントローラーで、ロケーションIDの代わりにロケーション名を表示したいとします。 マイJobDetailコントローラは以下の通りである
public class JobController : Controller
{
public IJobDetails repository;
public JobController(IJobDetails job)
{
repository = job;
}
public ViewResult List()
{
return View(repository.jobDetailsInterface);
}
}
どのように私の仕事ビューに場所の名前の代わりに、ロケーションIDを表示するには?
N.B-私はAdam Freemanの本からMVCを学習していて、何か新しいものを作成しようとしています。私が行ったことが正しいかどうかを教えてください。
EntityFrameworkを使用していますか?もしそうなら、 'repository.jobDetailsInterface.Location.LocationName'のようなジョブリポジトリを通してLocationNameにアクセスできるはずです。 – sleeyuen
私はエンティティフレームワークを使用していますが、私はjobDetailsInterfaceを通じてlocationNameにアクセスできません – BSB