public async Task <dynamic> OnCreateDiscussionAsync([FromForm] Discussion discussion, [FromForm] string token) { try { var t = await tokenService.GetTokenAsync(token); if (t == null) { throw new Exception("请先登录"); } if (t.Role != UserRole.Admin) { var uc = await courseService.GetUserCourseAsync(t.UserID, discussion.CourseId); if (uc == null) { throw new Exception("权限不足"); } } await courseService.AddDiscussionAsync(discussion); await eventService.AddDiscussionCreatedEventAsync(discussion.DiscussionId, discussion.Title, discussion.CreatorID, discussion.CourseId); return(new { Res = true }); } catch (Exception e) { return(new { Res = false, Error = e.Message }); } }