這是一個假設性的問題,可以說,我有一個非常基本的論壇MVC實體分離的最佳實踐
我有以下的實體(對象)
public class User
{
public Guid Id { get; set;}
public string Username { get; set;}
}
public class Thread
{
public Guid Id { get; set;}
public Guid Owner { get; set;}//UserId
public string Title { get; set; }
public DateTime DateCreated { get; set; }
}
public class Post
{
public Guid Id { get; set; }
public Guid ThreadId { get; set; }
public string Content { get; set; }
public DateTime DatePosted { get; set; }
public Guid PostedBy { get; set; }//UserId
}
我有以下控制器
- UsersController
- ThreadsController
- PostsController
當我想要檢索特定的線程或線程列表時,我打了ThreadsController。
,當我想找回帖子特定線程,我打的PostsController
問題:
如果我想要檢索線程的列表,用戶已經創建,它的以下將是最好的辦法:
創建一個新的控制器 - UserThreadsController,返回線程對象的列表
創建的ThreadsController額外的操作方法,即GetByUser
創建的UserController中的額外的操作方法,即GetThreads
感謝
你可以發佈你的模型? 'Threads'是否有一個連接到'User'表的'ID'字段的外鍵屬性? –
問題不在於我如何去檢索數據,這是我完全適應的。問題是我如何構建我的控制器? – pieperu