在使用.NET后端的Azure移动应用程序中,我需要一个控制器来查找由第二个控制器处理的实体。例如,在Azure团队的Todo Quickstart项目中,想象一下添加一个处理用户管理的UserController
。在TodoItemController
中,我需要调用UserController.GetUser(id)
来检查用户是否有权发布新的TodoItem。
在TodoItemController.cs
:
var userController = new UserController();
var user = userController.GetUser("12345");
if (user.IsAuthorized)
{
// Insert TodoItem
}
在UserController.GetUser()
中调用TableController.Lookup()时,上述代码会引发异常。例外情况表明request参数不能为null。我的猜测是缺少某些东西,因为我自己创建了UserController
,而不是由框架创建。
我该如何做到这一点?
答案 0 :(得分:0)
这似乎适用于TodoItemController.cs
:
var context = new todoProjectContext();
var userDomainManager = new EntityDomainManager<User>(context, Request);
var user = userDomainManager.Lookup(id).Queryable.FirstOrDefault();
if (user.isAuthorized)
{
// Insert item
}
不确定这是最好的解决方案。