我在ASP.NET (MVC3 HTML5)网站上工作。我需要以某种方式让管理员编辑内容,如新闻,主页文本,促销等。我可以使用现有的API实现这一点?
谢谢。
发布于 2011-04-16 19:58:25
非常简单。创建一个用于编辑希望管理员编辑的内容的界面,并使用Authorize属性对其进行保护
//for the users
[Authorize]
public ActionResult NormalUsers(int newsItemId)
{
//Getting content from DB.
NewsItem news = new NewsItem(newsItemId);
return View("ShowNews", news);
}
//for editors
[Authorize(Roles = "Admin, Super User")]
[HttpGet]
public ActionResult AdministratorsOnly(int newsItemId)
{
//Getting content from DB
NewsItem news = new NewsItem(newsItemId);
return View("EditNews", news);
}
[Authorize(Roles = "Admin, Super User")]
[HttpPost]
public ActionResult AdministratorsOnly(NewsItem newsItem)
{
//Putting content in DB
newsRepository.StoreNewsItemInDB(newsItem);
NewsItem news = new NewsItem(newsItem.Id);//getting the newsItem from DB, to allow for server side processing.
return View("EditNews", news);
}Link to MSDN for the language details.
它的工作方式是你有两个(实际上是三个)新闻视图。第一个视图用于向普通用户显示NewsItem-object。
第二个视图用于获取NewsItem-object进行编辑。第三个视图用于显示编辑后的NewsItem-object,以确保编辑的最终结果。
用户将始终看到最后编辑的NewsItem(与3相同)。
https://stackoverflow.com/questions/5686159
复制相似问题